{-# 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.DOMElement
    ( 

-- * Exported types
    DOMElement(..)                          ,
    IsDOMElement                            ,
    toDOMElement                            ,


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

#if defined(ENABLE_OVERLOADING)
    ResolveDOMElementMethod                 ,
#endif


-- ** blur #method:blur#

#if defined(ENABLE_OVERLOADING)
    DOMElementBlurMethodInfo                ,
#endif
    dOMElementBlur                          ,


-- ** closest #method:closest#

#if defined(ENABLE_OVERLOADING)
    DOMElementClosestMethodInfo             ,
#endif
    dOMElementClosest                       ,


-- ** focus #method:focus#

#if defined(ENABLE_OVERLOADING)
    DOMElementFocusMethodInfo               ,
#endif
    dOMElementFocus                         ,


-- ** getAttribute #method:getAttribute#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetAttributeMethodInfo        ,
#endif
    dOMElementGetAttribute                  ,


-- ** getAttributeNode #method:getAttributeNode#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetAttributeNodeMethodInfo    ,
#endif
    dOMElementGetAttributeNode              ,


-- ** getAttributeNodeNs #method:getAttributeNodeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetAttributeNodeNsMethodInfo  ,
#endif
    dOMElementGetAttributeNodeNs            ,


-- ** getAttributeNs #method:getAttributeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetAttributeNsMethodInfo      ,
#endif
    dOMElementGetAttributeNs                ,


-- ** getAttributes #method:getAttributes#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetAttributesMethodInfo       ,
#endif
    dOMElementGetAttributes                 ,


-- ** getBoundingClientRect #method:getBoundingClientRect#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetBoundingClientRectMethodInfo,
#endif
    dOMElementGetBoundingClientRect         ,


-- ** getChildElementCount #method:getChildElementCount#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetChildElementCountMethodInfo,
#endif
    dOMElementGetChildElementCount          ,


-- ** getChildren #method:getChildren#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetChildrenMethodInfo         ,
#endif
    dOMElementGetChildren                   ,


-- ** getClassList #method:getClassList#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClassListMethodInfo        ,
#endif
    dOMElementGetClassList                  ,


-- ** getClassName #method:getClassName#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClassNameMethodInfo        ,
#endif
    dOMElementGetClassName                  ,


-- ** getClientHeight #method:getClientHeight#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClientHeightMethodInfo     ,
#endif
    dOMElementGetClientHeight               ,


-- ** getClientLeft #method:getClientLeft#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClientLeftMethodInfo       ,
#endif
    dOMElementGetClientLeft                 ,


-- ** getClientRects #method:getClientRects#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClientRectsMethodInfo      ,
#endif
    dOMElementGetClientRects                ,


-- ** getClientTop #method:getClientTop#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClientTopMethodInfo        ,
#endif
    dOMElementGetClientTop                  ,


-- ** getClientWidth #method:getClientWidth#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetClientWidthMethodInfo      ,
#endif
    dOMElementGetClientWidth                ,


-- ** getElementsByClassName #method:getElementsByClassName#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByClassNameMethodInfo,
#endif
    dOMElementGetElementsByClassName        ,


-- ** getElementsByClassNameAsHtmlCollection #method:getElementsByClassNameAsHtmlCollection#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo,
#endif
    dOMElementGetElementsByClassNameAsHtmlCollection,


-- ** getElementsByTagName #method:getElementsByTagName#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByTagNameMethodInfo,
#endif
    dOMElementGetElementsByTagName          ,


-- ** getElementsByTagNameAsHtmlCollection #method:getElementsByTagNameAsHtmlCollection#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo,
#endif
    dOMElementGetElementsByTagNameAsHtmlCollection,


-- ** getElementsByTagNameNs #method:getElementsByTagNameNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByTagNameNsMethodInfo,
#endif
    dOMElementGetElementsByTagNameNs        ,


-- ** getElementsByTagNameNsAsHtmlCollection #method:getElementsByTagNameNsAsHtmlCollection#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo,
#endif
    dOMElementGetElementsByTagNameNsAsHtmlCollection,


-- ** getFirstElementChild #method:getFirstElementChild#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetFirstElementChildMethodInfo,
#endif
    dOMElementGetFirstElementChild          ,


-- ** getId #method:getId#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetIdMethodInfo               ,
#endif
    dOMElementGetId                         ,


-- ** getInnerHtml #method:getInnerHtml#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetInnerHtmlMethodInfo        ,
#endif
    dOMElementGetInnerHtml                  ,


-- ** getLastElementChild #method:getLastElementChild#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetLastElementChildMethodInfo ,
#endif
    dOMElementGetLastElementChild           ,


-- ** getLocalName #method:getLocalName#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetLocalNameMethodInfo        ,
#endif
    dOMElementGetLocalName                  ,


-- ** getNamespaceUri #method:getNamespaceUri#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetNamespaceUriMethodInfo     ,
#endif
    dOMElementGetNamespaceUri               ,


-- ** getNextElementSibling #method:getNextElementSibling#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetNextElementSiblingMethodInfo,
#endif
    dOMElementGetNextElementSibling         ,


-- ** getOffsetHeight #method:getOffsetHeight#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOffsetHeightMethodInfo     ,
#endif
    dOMElementGetOffsetHeight               ,


-- ** getOffsetLeft #method:getOffsetLeft#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOffsetLeftMethodInfo       ,
#endif
    dOMElementGetOffsetLeft                 ,


-- ** getOffsetParent #method:getOffsetParent#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOffsetParentMethodInfo     ,
#endif
    dOMElementGetOffsetParent               ,


-- ** getOffsetTop #method:getOffsetTop#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOffsetTopMethodInfo        ,
#endif
    dOMElementGetOffsetTop                  ,


-- ** getOffsetWidth #method:getOffsetWidth#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOffsetWidthMethodInfo      ,
#endif
    dOMElementGetOffsetWidth                ,


-- ** getOuterHtml #method:getOuterHtml#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetOuterHtmlMethodInfo        ,
#endif
    dOMElementGetOuterHtml                  ,


-- ** getPrefix #method:getPrefix#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetPrefixMethodInfo           ,
#endif
    dOMElementGetPrefix                     ,


-- ** getPreviousElementSibling #method:getPreviousElementSibling#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetPreviousElementSiblingMethodInfo,
#endif
    dOMElementGetPreviousElementSibling     ,


-- ** getScrollHeight #method:getScrollHeight#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetScrollHeightMethodInfo     ,
#endif
    dOMElementGetScrollHeight               ,


-- ** getScrollLeft #method:getScrollLeft#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetScrollLeftMethodInfo       ,
#endif
    dOMElementGetScrollLeft                 ,


-- ** getScrollTop #method:getScrollTop#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetScrollTopMethodInfo        ,
#endif
    dOMElementGetScrollTop                  ,


-- ** getScrollWidth #method:getScrollWidth#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetScrollWidthMethodInfo      ,
#endif
    dOMElementGetScrollWidth                ,


-- ** getStyle #method:getStyle#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetStyleMethodInfo            ,
#endif
    dOMElementGetStyle                      ,


-- ** getTagName #method:getTagName#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetTagNameMethodInfo          ,
#endif
    dOMElementGetTagName                    ,


-- ** getWebkitRegionOverset #method:getWebkitRegionOverset#

#if defined(ENABLE_OVERLOADING)
    DOMElementGetWebkitRegionOversetMethodInfo,
#endif
    dOMElementGetWebkitRegionOverset        ,


-- ** hasAttribute #method:hasAttribute#

#if defined(ENABLE_OVERLOADING)
    DOMElementHasAttributeMethodInfo        ,
#endif
    dOMElementHasAttribute                  ,


-- ** hasAttributeNs #method:hasAttributeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementHasAttributeNsMethodInfo      ,
#endif
    dOMElementHasAttributeNs                ,


-- ** hasAttributes #method:hasAttributes#

#if defined(ENABLE_OVERLOADING)
    DOMElementHasAttributesMethodInfo       ,
#endif
    dOMElementHasAttributes                 ,


-- ** htmlInputElementGetAutoFilled #method:htmlInputElementGetAutoFilled#

#if defined(ENABLE_OVERLOADING)
    DOMElementHtmlInputElementGetAutoFilledMethodInfo,
#endif
    dOMElementHtmlInputElementGetAutoFilled ,


-- ** htmlInputElementIsUserEdited #method:htmlInputElementIsUserEdited#

#if defined(ENABLE_OVERLOADING)
    DOMElementHtmlInputElementIsUserEditedMethodInfo,
#endif
    dOMElementHtmlInputElementIsUserEdited  ,


-- ** htmlInputElementSetAutoFilled #method:htmlInputElementSetAutoFilled#

#if defined(ENABLE_OVERLOADING)
    DOMElementHtmlInputElementSetAutoFilledMethodInfo,
#endif
    dOMElementHtmlInputElementSetAutoFilled ,


-- ** htmlInputElementSetEditingValue #method:htmlInputElementSetEditingValue#

#if defined(ENABLE_OVERLOADING)
    DOMElementHtmlInputElementSetEditingValueMethodInfo,
#endif
    dOMElementHtmlInputElementSetEditingValue,


-- ** insertAdjacentElement #method:insertAdjacentElement#

#if defined(ENABLE_OVERLOADING)
    DOMElementInsertAdjacentElementMethodInfo,
#endif
    dOMElementInsertAdjacentElement         ,


-- ** insertAdjacentHtml #method:insertAdjacentHtml#

#if defined(ENABLE_OVERLOADING)
    DOMElementInsertAdjacentHtmlMethodInfo  ,
#endif
    dOMElementInsertAdjacentHtml            ,


-- ** insertAdjacentText #method:insertAdjacentText#

#if defined(ENABLE_OVERLOADING)
    DOMElementInsertAdjacentTextMethodInfo  ,
#endif
    dOMElementInsertAdjacentText            ,


-- ** matches #method:matches#

#if defined(ENABLE_OVERLOADING)
    DOMElementMatchesMethodInfo             ,
#endif
    dOMElementMatches                       ,


-- ** querySelector #method:querySelector#

#if defined(ENABLE_OVERLOADING)
    DOMElementQuerySelectorMethodInfo       ,
#endif
    dOMElementQuerySelector                 ,


-- ** querySelectorAll #method:querySelectorAll#

#if defined(ENABLE_OVERLOADING)
    DOMElementQuerySelectorAllMethodInfo    ,
#endif
    dOMElementQuerySelectorAll              ,


-- ** remove #method:remove#

#if defined(ENABLE_OVERLOADING)
    DOMElementRemoveMethodInfo              ,
#endif
    dOMElementRemove                        ,


-- ** removeAttribute #method:removeAttribute#

#if defined(ENABLE_OVERLOADING)
    DOMElementRemoveAttributeMethodInfo     ,
#endif
    dOMElementRemoveAttribute               ,


-- ** removeAttributeNode #method:removeAttributeNode#

#if defined(ENABLE_OVERLOADING)
    DOMElementRemoveAttributeNodeMethodInfo ,
#endif
    dOMElementRemoveAttributeNode           ,


-- ** removeAttributeNs #method:removeAttributeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementRemoveAttributeNsMethodInfo   ,
#endif
    dOMElementRemoveAttributeNs             ,


-- ** requestPointerLock #method:requestPointerLock#

#if defined(ENABLE_OVERLOADING)
    DOMElementRequestPointerLockMethodInfo  ,
#endif
    dOMElementRequestPointerLock            ,


-- ** scrollByLines #method:scrollByLines#

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollByLinesMethodInfo       ,
#endif
    dOMElementScrollByLines                 ,


-- ** scrollByPages #method:scrollByPages#

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollByPagesMethodInfo       ,
#endif
    dOMElementScrollByPages                 ,


-- ** scrollIntoView #method:scrollIntoView#

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollIntoViewMethodInfo      ,
#endif
    dOMElementScrollIntoView                ,


-- ** scrollIntoViewIfNeeded #method:scrollIntoViewIfNeeded#

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollIntoViewIfNeededMethodInfo,
#endif
    dOMElementScrollIntoViewIfNeeded        ,


-- ** setAttribute #method:setAttribute#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetAttributeMethodInfo        ,
#endif
    dOMElementSetAttribute                  ,


-- ** setAttributeNode #method:setAttributeNode#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetAttributeNodeMethodInfo    ,
#endif
    dOMElementSetAttributeNode              ,


-- ** setAttributeNodeNs #method:setAttributeNodeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetAttributeNodeNsMethodInfo  ,
#endif
    dOMElementSetAttributeNodeNs            ,


-- ** setAttributeNs #method:setAttributeNs#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetAttributeNsMethodInfo      ,
#endif
    dOMElementSetAttributeNs                ,


-- ** setClassName #method:setClassName#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetClassNameMethodInfo        ,
#endif
    dOMElementSetClassName                  ,


-- ** setId #method:setId#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetIdMethodInfo               ,
#endif
    dOMElementSetId                         ,


-- ** setInnerHtml #method:setInnerHtml#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetInnerHtmlMethodInfo        ,
#endif
    dOMElementSetInnerHtml                  ,


-- ** setOuterHtml #method:setOuterHtml#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetOuterHtmlMethodInfo        ,
#endif
    dOMElementSetOuterHtml                  ,


-- ** setScrollLeft #method:setScrollLeft#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetScrollLeftMethodInfo       ,
#endif
    dOMElementSetScrollLeft                 ,


-- ** setScrollTop #method:setScrollTop#

#if defined(ENABLE_OVERLOADING)
    DOMElementSetScrollTopMethodInfo        ,
#endif
    dOMElementSetScrollTop                  ,


-- ** webkitMatchesSelector #method:webkitMatchesSelector#

#if defined(ENABLE_OVERLOADING)
    DOMElementWebkitMatchesSelectorMethodInfo,
#endif
    dOMElementWebkitMatchesSelector         ,


-- ** webkitRequestFullscreen #method:webkitRequestFullscreen#

#if defined(ENABLE_OVERLOADING)
    DOMElementWebkitRequestFullscreenMethodInfo,
#endif
    dOMElementWebkitRequestFullscreen       ,




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

#if defined(ENABLE_OVERLOADING)
    DOMElementAttributesPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementAttributes                    ,
#endif
    getDOMElementAttributes                 ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementChildElementCountPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementChildElementCount             ,
#endif
    getDOMElementChildElementCount          ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementChildrenPropertyInfo          ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementChildren                      ,
#endif
    getDOMElementChildren                   ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClassListPropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementClassList                     ,
#endif
    getDOMElementClassList                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClassNamePropertyInfo         ,
#endif
    constructDOMElementClassName            ,
#if defined(ENABLE_OVERLOADING)
    dOMElementClassName                     ,
#endif
    getDOMElementClassName                  ,
    setDOMElementClassName                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClientHeightPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementClientHeight                  ,
#endif
    getDOMElementClientHeight               ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClientLeftPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementClientLeft                    ,
#endif
    getDOMElementClientLeft                 ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClientTopPropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementClientTop                     ,
#endif
    getDOMElementClientTop                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementClientWidthPropertyInfo       ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementClientWidth                   ,
#endif
    getDOMElementClientWidth                ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementFirstElementChildPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementFirstElementChild             ,
#endif
    getDOMElementFirstElementChild          ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementIdPropertyInfo                ,
#endif
    constructDOMElementId                   ,
#if defined(ENABLE_OVERLOADING)
    dOMElementId                            ,
#endif
    getDOMElementId                         ,
    setDOMElementId                         ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementInnerHtmlPropertyInfo         ,
#endif
    clearDOMElementInnerHtml                ,
    constructDOMElementInnerHtml            ,
#if defined(ENABLE_OVERLOADING)
    dOMElementInnerHtml                     ,
#endif
    getDOMElementInnerHtml                  ,
    setDOMElementInnerHtml                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementLastElementChildPropertyInfo  ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementLastElementChild              ,
#endif
    getDOMElementLastElementChild           ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementLocalNamePropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementLocalName                     ,
#endif
    getDOMElementLocalName                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementNamespaceUriPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementNamespaceUri                  ,
#endif
    getDOMElementNamespaceUri               ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementNextElementSiblingPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementNextElementSibling            ,
#endif
    getDOMElementNextElementSibling         ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOffsetHeightPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementOffsetHeight                  ,
#endif
    getDOMElementOffsetHeight               ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOffsetLeftPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementOffsetLeft                    ,
#endif
    getDOMElementOffsetLeft                 ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOffsetParentPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementOffsetParent                  ,
#endif
    getDOMElementOffsetParent               ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOffsetTopPropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementOffsetTop                     ,
#endif
    getDOMElementOffsetTop                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOffsetWidthPropertyInfo       ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementOffsetWidth                   ,
#endif
    getDOMElementOffsetWidth                ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementOuterHtmlPropertyInfo         ,
#endif
    clearDOMElementOuterHtml                ,
    constructDOMElementOuterHtml            ,
#if defined(ENABLE_OVERLOADING)
    dOMElementOuterHtml                     ,
#endif
    getDOMElementOuterHtml                  ,
    setDOMElementOuterHtml                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementPrefixPropertyInfo            ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementPrefix                        ,
#endif
    getDOMElementPrefix                     ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementPreviousElementSiblingPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementPreviousElementSibling        ,
#endif
    getDOMElementPreviousElementSibling     ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollHeightPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementScrollHeight                  ,
#endif
    getDOMElementScrollHeight               ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollLeftPropertyInfo        ,
#endif
    constructDOMElementScrollLeft           ,
#if defined(ENABLE_OVERLOADING)
    dOMElementScrollLeft                    ,
#endif
    getDOMElementScrollLeft                 ,
    setDOMElementScrollLeft                 ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollTopPropertyInfo         ,
#endif
    constructDOMElementScrollTop            ,
#if defined(ENABLE_OVERLOADING)
    dOMElementScrollTop                     ,
#endif
    getDOMElementScrollTop                  ,
    setDOMElementScrollTop                  ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementScrollWidthPropertyInfo       ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementScrollWidth                   ,
#endif
    getDOMElementScrollWidth                ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementStylePropertyInfo             ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementStyle                         ,
#endif
    getDOMElementStyle                      ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementTagNamePropertyInfo           ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementTagName                       ,
#endif
    getDOMElementTagName                    ,


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

#if defined(ENABLE_OVERLOADING)
    DOMElementWebkitRegionOversetPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMElementWebkitRegionOverset           ,
#endif
    getDOMElementWebkitRegionOverset        ,




    ) 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.DOMAttr as WebKit2WebExtension.DOMAttr
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration as WebKit2WebExtension.DOMCSSStyleDeclaration
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMClientRect as WebKit2WebExtension.DOMClientRect
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMClientRectList as WebKit2WebExtension.DOMClientRectList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDOMTokenList as WebKit2WebExtension.DOMDOMTokenList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLCollection as WebKit2WebExtension.DOMHTMLCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNamedNodeMap as WebKit2WebExtension.DOMNamedNodeMap
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 DOMElement = DOMElement (SP.ManagedPtr DOMElement)
    deriving (DOMElement -> DOMElement -> Bool
(DOMElement -> DOMElement -> Bool)
-> (DOMElement -> DOMElement -> Bool) -> Eq DOMElement
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMElement -> DOMElement -> Bool
$c/= :: DOMElement -> DOMElement -> Bool
== :: DOMElement -> DOMElement -> Bool
$c== :: DOMElement -> DOMElement -> Bool
Eq)

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

foreign import ccall "webkit_dom_element_get_type"
    c_webkit_dom_element_get_type :: IO B.Types.GType

instance B.Types.TypedObject DOMElement where
    glibType :: IO GType
glibType = IO GType
c_webkit_dom_element_get_type

instance B.Types.GObject DOMElement

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

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

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

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

#if defined(ENABLE_OVERLOADING)
type family ResolveDOMElementMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMElementMethod "addEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetAddEventListenerMethodInfo
    ResolveDOMElementMethod "appendChild" o = WebKit2WebExtension.DOMNode.DOMNodeAppendChildMethodInfo
    ResolveDOMElementMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMElementMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMElementMethod "blur" o = DOMElementBlurMethodInfo
    ResolveDOMElementMethod "cloneNodeWithError" o = WebKit2WebExtension.DOMNode.DOMNodeCloneNodeWithErrorMethodInfo
    ResolveDOMElementMethod "closest" o = DOMElementClosestMethodInfo
    ResolveDOMElementMethod "compareDocumentPosition" o = WebKit2WebExtension.DOMNode.DOMNodeCompareDocumentPositionMethodInfo
    ResolveDOMElementMethod "contains" o = WebKit2WebExtension.DOMNode.DOMNodeContainsMethodInfo
    ResolveDOMElementMethod "dispatchEvent" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetDispatchEventMethodInfo
    ResolveDOMElementMethod "focus" o = DOMElementFocusMethodInfo
    ResolveDOMElementMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMElementMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMElementMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveDOMElementMethod "hasAttribute" o = DOMElementHasAttributeMethodInfo
    ResolveDOMElementMethod "hasAttributeNs" o = DOMElementHasAttributeNsMethodInfo
    ResolveDOMElementMethod "hasAttributes" o = DOMElementHasAttributesMethodInfo
    ResolveDOMElementMethod "hasChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeHasChildNodesMethodInfo
    ResolveDOMElementMethod "htmlInputElementGetAutoFilled" o = DOMElementHtmlInputElementGetAutoFilledMethodInfo
    ResolveDOMElementMethod "htmlInputElementIsUserEdited" o = DOMElementHtmlInputElementIsUserEditedMethodInfo
    ResolveDOMElementMethod "htmlInputElementSetAutoFilled" o = DOMElementHtmlInputElementSetAutoFilledMethodInfo
    ResolveDOMElementMethod "htmlInputElementSetEditingValue" o = DOMElementHtmlInputElementSetEditingValueMethodInfo
    ResolveDOMElementMethod "insertAdjacentElement" o = DOMElementInsertAdjacentElementMethodInfo
    ResolveDOMElementMethod "insertAdjacentHtml" o = DOMElementInsertAdjacentHtmlMethodInfo
    ResolveDOMElementMethod "insertAdjacentText" o = DOMElementInsertAdjacentTextMethodInfo
    ResolveDOMElementMethod "insertBefore" o = WebKit2WebExtension.DOMNode.DOMNodeInsertBeforeMethodInfo
    ResolveDOMElementMethod "isDefaultNamespace" o = WebKit2WebExtension.DOMNode.DOMNodeIsDefaultNamespaceMethodInfo
    ResolveDOMElementMethod "isEqualNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsEqualNodeMethodInfo
    ResolveDOMElementMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMElementMethod "isSameNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsSameNodeMethodInfo
    ResolveDOMElementMethod "isSupported" o = WebKit2WebExtension.DOMNode.DOMNodeIsSupportedMethodInfo
    ResolveDOMElementMethod "lookupNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeLookupNamespaceUriMethodInfo
    ResolveDOMElementMethod "lookupPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeLookupPrefixMethodInfo
    ResolveDOMElementMethod "matches" o = DOMElementMatchesMethodInfo
    ResolveDOMElementMethod "normalize" o = WebKit2WebExtension.DOMNode.DOMNodeNormalizeMethodInfo
    ResolveDOMElementMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMElementMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMElementMethod "querySelector" o = DOMElementQuerySelectorMethodInfo
    ResolveDOMElementMethod "querySelectorAll" o = DOMElementQuerySelectorAllMethodInfo
    ResolveDOMElementMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMElementMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMElementMethod "remove" o = DOMElementRemoveMethodInfo
    ResolveDOMElementMethod "removeAttribute" o = DOMElementRemoveAttributeMethodInfo
    ResolveDOMElementMethod "removeAttributeNode" o = DOMElementRemoveAttributeNodeMethodInfo
    ResolveDOMElementMethod "removeAttributeNs" o = DOMElementRemoveAttributeNsMethodInfo
    ResolveDOMElementMethod "removeChild" o = WebKit2WebExtension.DOMNode.DOMNodeRemoveChildMethodInfo
    ResolveDOMElementMethod "removeEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetRemoveEventListenerMethodInfo
    ResolveDOMElementMethod "replaceChild" o = WebKit2WebExtension.DOMNode.DOMNodeReplaceChildMethodInfo
    ResolveDOMElementMethod "requestPointerLock" o = DOMElementRequestPointerLockMethodInfo
    ResolveDOMElementMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMElementMethod "scrollByLines" o = DOMElementScrollByLinesMethodInfo
    ResolveDOMElementMethod "scrollByPages" o = DOMElementScrollByPagesMethodInfo
    ResolveDOMElementMethod "scrollIntoView" o = DOMElementScrollIntoViewMethodInfo
    ResolveDOMElementMethod "scrollIntoViewIfNeeded" o = DOMElementScrollIntoViewIfNeededMethodInfo
    ResolveDOMElementMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMElementMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMElementMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMElementMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMElementMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMElementMethod "webkitMatchesSelector" o = DOMElementWebkitMatchesSelectorMethodInfo
    ResolveDOMElementMethod "webkitRequestFullscreen" o = DOMElementWebkitRequestFullscreenMethodInfo
    ResolveDOMElementMethod "getAttribute" o = DOMElementGetAttributeMethodInfo
    ResolveDOMElementMethod "getAttributeNode" o = DOMElementGetAttributeNodeMethodInfo
    ResolveDOMElementMethod "getAttributeNodeNs" o = DOMElementGetAttributeNodeNsMethodInfo
    ResolveDOMElementMethod "getAttributeNs" o = DOMElementGetAttributeNsMethodInfo
    ResolveDOMElementMethod "getAttributes" o = DOMElementGetAttributesMethodInfo
    ResolveDOMElementMethod "getBaseUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetBaseUriMethodInfo
    ResolveDOMElementMethod "getBoundingClientRect" o = DOMElementGetBoundingClientRectMethodInfo
    ResolveDOMElementMethod "getChildElementCount" o = DOMElementGetChildElementCountMethodInfo
    ResolveDOMElementMethod "getChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeGetChildNodesMethodInfo
    ResolveDOMElementMethod "getChildren" o = DOMElementGetChildrenMethodInfo
    ResolveDOMElementMethod "getClassList" o = DOMElementGetClassListMethodInfo
    ResolveDOMElementMethod "getClassName" o = DOMElementGetClassNameMethodInfo
    ResolveDOMElementMethod "getClientHeight" o = DOMElementGetClientHeightMethodInfo
    ResolveDOMElementMethod "getClientLeft" o = DOMElementGetClientLeftMethodInfo
    ResolveDOMElementMethod "getClientRects" o = DOMElementGetClientRectsMethodInfo
    ResolveDOMElementMethod "getClientTop" o = DOMElementGetClientTopMethodInfo
    ResolveDOMElementMethod "getClientWidth" o = DOMElementGetClientWidthMethodInfo
    ResolveDOMElementMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMElementMethod "getElementsByClassName" o = DOMElementGetElementsByClassNameMethodInfo
    ResolveDOMElementMethod "getElementsByClassNameAsHtmlCollection" o = DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo
    ResolveDOMElementMethod "getElementsByTagName" o = DOMElementGetElementsByTagNameMethodInfo
    ResolveDOMElementMethod "getElementsByTagNameAsHtmlCollection" o = DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo
    ResolveDOMElementMethod "getElementsByTagNameNs" o = DOMElementGetElementsByTagNameNsMethodInfo
    ResolveDOMElementMethod "getElementsByTagNameNsAsHtmlCollection" o = DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo
    ResolveDOMElementMethod "getFirstChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetFirstChildMethodInfo
    ResolveDOMElementMethod "getFirstElementChild" o = DOMElementGetFirstElementChildMethodInfo
    ResolveDOMElementMethod "getId" o = DOMElementGetIdMethodInfo
    ResolveDOMElementMethod "getInnerHtml" o = DOMElementGetInnerHtmlMethodInfo
    ResolveDOMElementMethod "getLastChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetLastChildMethodInfo
    ResolveDOMElementMethod "getLastElementChild" o = DOMElementGetLastElementChildMethodInfo
    ResolveDOMElementMethod "getLocalName" o = DOMElementGetLocalNameMethodInfo
    ResolveDOMElementMethod "getNamespaceUri" o = DOMElementGetNamespaceUriMethodInfo
    ResolveDOMElementMethod "getNextElementSibling" o = DOMElementGetNextElementSiblingMethodInfo
    ResolveDOMElementMethod "getNextSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetNextSiblingMethodInfo
    ResolveDOMElementMethod "getNodeName" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeNameMethodInfo
    ResolveDOMElementMethod "getNodeType" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeTypeMethodInfo
    ResolveDOMElementMethod "getNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeValueMethodInfo
    ResolveDOMElementMethod "getOffsetHeight" o = DOMElementGetOffsetHeightMethodInfo
    ResolveDOMElementMethod "getOffsetLeft" o = DOMElementGetOffsetLeftMethodInfo
    ResolveDOMElementMethod "getOffsetParent" o = DOMElementGetOffsetParentMethodInfo
    ResolveDOMElementMethod "getOffsetTop" o = DOMElementGetOffsetTopMethodInfo
    ResolveDOMElementMethod "getOffsetWidth" o = DOMElementGetOffsetWidthMethodInfo
    ResolveDOMElementMethod "getOuterHtml" o = DOMElementGetOuterHtmlMethodInfo
    ResolveDOMElementMethod "getOwnerDocument" o = WebKit2WebExtension.DOMNode.DOMNodeGetOwnerDocumentMethodInfo
    ResolveDOMElementMethod "getParentElement" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentElementMethodInfo
    ResolveDOMElementMethod "getParentNode" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentNodeMethodInfo
    ResolveDOMElementMethod "getPrefix" o = DOMElementGetPrefixMethodInfo
    ResolveDOMElementMethod "getPreviousElementSibling" o = DOMElementGetPreviousElementSiblingMethodInfo
    ResolveDOMElementMethod "getPreviousSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetPreviousSiblingMethodInfo
    ResolveDOMElementMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMElementMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMElementMethod "getScrollHeight" o = DOMElementGetScrollHeightMethodInfo
    ResolveDOMElementMethod "getScrollLeft" o = DOMElementGetScrollLeftMethodInfo
    ResolveDOMElementMethod "getScrollTop" o = DOMElementGetScrollTopMethodInfo
    ResolveDOMElementMethod "getScrollWidth" o = DOMElementGetScrollWidthMethodInfo
    ResolveDOMElementMethod "getStyle" o = DOMElementGetStyleMethodInfo
    ResolveDOMElementMethod "getTagName" o = DOMElementGetTagNameMethodInfo
    ResolveDOMElementMethod "getTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeGetTextContentMethodInfo
    ResolveDOMElementMethod "getWebkitRegionOverset" o = DOMElementGetWebkitRegionOversetMethodInfo
    ResolveDOMElementMethod "setAttribute" o = DOMElementSetAttributeMethodInfo
    ResolveDOMElementMethod "setAttributeNode" o = DOMElementSetAttributeNodeMethodInfo
    ResolveDOMElementMethod "setAttributeNodeNs" o = DOMElementSetAttributeNodeNsMethodInfo
    ResolveDOMElementMethod "setAttributeNs" o = DOMElementSetAttributeNsMethodInfo
    ResolveDOMElementMethod "setClassName" o = DOMElementSetClassNameMethodInfo
    ResolveDOMElementMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMElementMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveDOMElementMethod "setId" o = DOMElementSetIdMethodInfo
    ResolveDOMElementMethod "setInnerHtml" o = DOMElementSetInnerHtmlMethodInfo
    ResolveDOMElementMethod "setNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeSetNodeValueMethodInfo
    ResolveDOMElementMethod "setOuterHtml" o = DOMElementSetOuterHtmlMethodInfo
    ResolveDOMElementMethod "setPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeSetPrefixMethodInfo
    ResolveDOMElementMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMElementMethod "setScrollLeft" o = DOMElementSetScrollLeftMethodInfo
    ResolveDOMElementMethod "setScrollTop" o = DOMElementSetScrollTopMethodInfo
    ResolveDOMElementMethod "setTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeSetTextContentMethodInfo
    ResolveDOMElementMethod l o = O.MethodResolutionFailed l o

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

#endif

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementAttributesPropertyInfo
instance AttrInfo DOMElementAttributesPropertyInfo where
    type AttrAllowedOps DOMElementAttributesPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementAttributesPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementAttributesPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementAttributesPropertyInfo = (~) ()
    type AttrTransferType DOMElementAttributesPropertyInfo = ()
    type AttrGetType DOMElementAttributesPropertyInfo = (Maybe WebKit2WebExtension.DOMNamedNodeMap.DOMNamedNodeMap)
    type AttrLabel DOMElementAttributesPropertyInfo = "attributes"
    type AttrOrigin DOMElementAttributesPropertyInfo = DOMElement
    attrGet = getDOMElementAttributes
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#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' dOMElement #childElementCount
-- @
getDOMElementChildElementCount :: (MonadIO m, IsDOMElement o) => o -> m CULong
getDOMElementChildElementCount :: o -> m CULong
getDOMElementChildElementCount 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 DOMElementChildElementCountPropertyInfo
instance AttrInfo DOMElementChildElementCountPropertyInfo where
    type AttrAllowedOps DOMElementChildElementCountPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementChildElementCountPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementChildElementCountPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementChildElementCountPropertyInfo = (~) ()
    type AttrTransferType DOMElementChildElementCountPropertyInfo = ()
    type AttrGetType DOMElementChildElementCountPropertyInfo = CULong
    type AttrLabel DOMElementChildElementCountPropertyInfo = "child-element-count"
    type AttrOrigin DOMElementChildElementCountPropertyInfo = DOMElement
    attrGet = getDOMElementChildElementCount
    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' dOMElement #children
-- @
getDOMElementChildren :: (MonadIO m, IsDOMElement o) => o -> m (Maybe WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)
getDOMElementChildren :: o -> m (Maybe DOMHTMLCollection)
getDOMElementChildren 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 DOMElementChildrenPropertyInfo
instance AttrInfo DOMElementChildrenPropertyInfo where
    type AttrAllowedOps DOMElementChildrenPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementChildrenPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementChildrenPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementChildrenPropertyInfo = (~) ()
    type AttrTransferType DOMElementChildrenPropertyInfo = ()
    type AttrGetType DOMElementChildrenPropertyInfo = (Maybe WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)
    type AttrLabel DOMElementChildrenPropertyInfo = "children"
    type AttrOrigin DOMElementChildrenPropertyInfo = DOMElement
    attrGet = getDOMElementChildren
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementClassListPropertyInfo
instance AttrInfo DOMElementClassListPropertyInfo where
    type AttrAllowedOps DOMElementClassListPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementClassListPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClassListPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementClassListPropertyInfo = (~) ()
    type AttrTransferType DOMElementClassListPropertyInfo = ()
    type AttrGetType DOMElementClassListPropertyInfo = (Maybe WebKit2WebExtension.DOMDOMTokenList.DOMDOMTokenList)
    type AttrLabel DOMElementClassListPropertyInfo = "class-list"
    type AttrOrigin DOMElementClassListPropertyInfo = DOMElement
    attrGet = getDOMElementClassList
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

-- | Get the value of the “@class-name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #className
-- @
getDOMElementClassName :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementClassName :: o -> m (Maybe Text)
getDOMElementClassName o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"class-name"

-- | Set the value of the “@class-name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMElement [ #className 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMElementClassName :: (MonadIO m, IsDOMElement o) => o -> T.Text -> m ()
setDOMElementClassName :: o -> Text -> m ()
setDOMElementClassName o
obj Text
val = IO () -> m ()
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
"class-name" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

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

#if defined(ENABLE_OVERLOADING)
data DOMElementClassNamePropertyInfo
instance AttrInfo DOMElementClassNamePropertyInfo where
    type AttrAllowedOps DOMElementClassNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMElementClassNamePropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClassNamePropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMElementClassNamePropertyInfo = (~) T.Text
    type AttrTransferType DOMElementClassNamePropertyInfo = T.Text
    type AttrGetType DOMElementClassNamePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementClassNamePropertyInfo = "class-name"
    type AttrOrigin DOMElementClassNamePropertyInfo = DOMElement
    attrGet = getDOMElementClassName
    attrSet = setDOMElementClassName
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementClassName
    attrClear = undefined
#endif

-- VVV Prop "client-height"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@client-height@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #clientHeight
-- @
getDOMElementClientHeight :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementClientHeight :: o -> m Double
getDOMElementClientHeight o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"client-height"

#if defined(ENABLE_OVERLOADING)
data DOMElementClientHeightPropertyInfo
instance AttrInfo DOMElementClientHeightPropertyInfo where
    type AttrAllowedOps DOMElementClientHeightPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementClientHeightPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClientHeightPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementClientHeightPropertyInfo = (~) ()
    type AttrTransferType DOMElementClientHeightPropertyInfo = ()
    type AttrGetType DOMElementClientHeightPropertyInfo = Double
    type AttrLabel DOMElementClientHeightPropertyInfo = "client-height"
    type AttrOrigin DOMElementClientHeightPropertyInfo = DOMElement
    attrGet = getDOMElementClientHeight
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "client-left"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@client-left@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #clientLeft
-- @
getDOMElementClientLeft :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementClientLeft :: o -> m Double
getDOMElementClientLeft o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"client-left"

#if defined(ENABLE_OVERLOADING)
data DOMElementClientLeftPropertyInfo
instance AttrInfo DOMElementClientLeftPropertyInfo where
    type AttrAllowedOps DOMElementClientLeftPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementClientLeftPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClientLeftPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementClientLeftPropertyInfo = (~) ()
    type AttrTransferType DOMElementClientLeftPropertyInfo = ()
    type AttrGetType DOMElementClientLeftPropertyInfo = Double
    type AttrLabel DOMElementClientLeftPropertyInfo = "client-left"
    type AttrOrigin DOMElementClientLeftPropertyInfo = DOMElement
    attrGet = getDOMElementClientLeft
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "client-top"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@client-top@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #clientTop
-- @
getDOMElementClientTop :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementClientTop :: o -> m Double
getDOMElementClientTop o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"client-top"

#if defined(ENABLE_OVERLOADING)
data DOMElementClientTopPropertyInfo
instance AttrInfo DOMElementClientTopPropertyInfo where
    type AttrAllowedOps DOMElementClientTopPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementClientTopPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClientTopPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementClientTopPropertyInfo = (~) ()
    type AttrTransferType DOMElementClientTopPropertyInfo = ()
    type AttrGetType DOMElementClientTopPropertyInfo = Double
    type AttrLabel DOMElementClientTopPropertyInfo = "client-top"
    type AttrOrigin DOMElementClientTopPropertyInfo = DOMElement
    attrGet = getDOMElementClientTop
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "client-width"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@client-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #clientWidth
-- @
getDOMElementClientWidth :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementClientWidth :: o -> m Double
getDOMElementClientWidth o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"client-width"

#if defined(ENABLE_OVERLOADING)
data DOMElementClientWidthPropertyInfo
instance AttrInfo DOMElementClientWidthPropertyInfo where
    type AttrAllowedOps DOMElementClientWidthPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementClientWidthPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementClientWidthPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementClientWidthPropertyInfo = (~) ()
    type AttrTransferType DOMElementClientWidthPropertyInfo = ()
    type AttrGetType DOMElementClientWidthPropertyInfo = Double
    type AttrLabel DOMElementClientWidthPropertyInfo = "client-width"
    type AttrOrigin DOMElementClientWidthPropertyInfo = DOMElement
    attrGet = getDOMElementClientWidth
    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' dOMElement #firstElementChild
-- @
getDOMElementFirstElementChild :: (MonadIO m, IsDOMElement o) => o -> m DOMElement
getDOMElementFirstElementChild :: o -> m DOMElement
getDOMElementFirstElementChild 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
"getDOMElementFirstElementChild" (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
DOMElement

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

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

-- | Get the value of the “@id@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #id
-- @
getDOMElementId :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementId :: o -> m (Maybe Text)
getDOMElementId o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"id"

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementIdPropertyInfo
instance AttrInfo DOMElementIdPropertyInfo where
    type AttrAllowedOps DOMElementIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMElementIdPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementIdPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMElementIdPropertyInfo = (~) T.Text
    type AttrTransferType DOMElementIdPropertyInfo = T.Text
    type AttrGetType DOMElementIdPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementIdPropertyInfo = "id"
    type AttrOrigin DOMElementIdPropertyInfo = DOMElement
    attrGet = getDOMElementId
    attrSet = setDOMElementId
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementId
    attrClear = undefined
#endif

-- VVV Prop "inner-html"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@inner-html@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #innerHtml
-- @
getDOMElementInnerHtml :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementInnerHtml :: o -> m (Maybe Text)
getDOMElementInnerHtml o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"inner-html"

-- | Set the value of the “@inner-html@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMElement [ #innerHtml 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMElementInnerHtml :: (MonadIO m, IsDOMElement o) => o -> T.Text -> m ()
setDOMElementInnerHtml :: o -> Text -> m ()
setDOMElementInnerHtml o
obj Text
val = IO () -> m ()
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
"inner-html" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

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

-- | Set the value of the “@inner-html@” 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' #innerHtml
-- @
clearDOMElementInnerHtml :: (MonadIO m, IsDOMElement o) => o -> m ()
clearDOMElementInnerHtml :: o -> m ()
clearDOMElementInnerHtml o
obj = IO () -> m ()
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
"inner-html" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data DOMElementInnerHtmlPropertyInfo
instance AttrInfo DOMElementInnerHtmlPropertyInfo where
    type AttrAllowedOps DOMElementInnerHtmlPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementInnerHtmlPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementInnerHtmlPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMElementInnerHtmlPropertyInfo = (~) T.Text
    type AttrTransferType DOMElementInnerHtmlPropertyInfo = T.Text
    type AttrGetType DOMElementInnerHtmlPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementInnerHtmlPropertyInfo = "inner-html"
    type AttrOrigin DOMElementInnerHtmlPropertyInfo = DOMElement
    attrGet = getDOMElementInnerHtml
    attrSet = setDOMElementInnerHtml
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementInnerHtml
    attrClear = clearDOMElementInnerHtml
#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' dOMElement #lastElementChild
-- @
getDOMElementLastElementChild :: (MonadIO m, IsDOMElement o) => o -> m DOMElement
getDOMElementLastElementChild :: o -> m DOMElement
getDOMElementLastElementChild 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
"getDOMElementLastElementChild" (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
DOMElement

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

-- VVV Prop "local-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@local-name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #localName
-- @
getDOMElementLocalName :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementLocalName :: o -> m (Maybe Text)
getDOMElementLocalName o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"local-name"

#if defined(ENABLE_OVERLOADING)
data DOMElementLocalNamePropertyInfo
instance AttrInfo DOMElementLocalNamePropertyInfo where
    type AttrAllowedOps DOMElementLocalNamePropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementLocalNamePropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementLocalNamePropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementLocalNamePropertyInfo = (~) ()
    type AttrTransferType DOMElementLocalNamePropertyInfo = ()
    type AttrGetType DOMElementLocalNamePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementLocalNamePropertyInfo = "local-name"
    type AttrOrigin DOMElementLocalNamePropertyInfo = DOMElement
    attrGet = getDOMElementLocalName
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "namespace-uri"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@namespace-uri@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #namespaceUri
-- @
getDOMElementNamespaceUri :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementNamespaceUri :: o -> m (Maybe Text)
getDOMElementNamespaceUri o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"namespace-uri"

#if defined(ENABLE_OVERLOADING)
data DOMElementNamespaceUriPropertyInfo
instance AttrInfo DOMElementNamespaceUriPropertyInfo where
    type AttrAllowedOps DOMElementNamespaceUriPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementNamespaceUriPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementNamespaceUriPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementNamespaceUriPropertyInfo = (~) ()
    type AttrTransferType DOMElementNamespaceUriPropertyInfo = ()
    type AttrGetType DOMElementNamespaceUriPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementNamespaceUriPropertyInfo = "namespace-uri"
    type AttrOrigin DOMElementNamespaceUriPropertyInfo = DOMElement
    attrGet = getDOMElementNamespaceUri
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

-- | Get the value of the “@next-element-sibling@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #nextElementSibling
-- @
getDOMElementNextElementSibling :: (MonadIO m, IsDOMElement o) => o -> m DOMElement
getDOMElementNextElementSibling :: o -> m DOMElement
getDOMElementNextElementSibling 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
"getDOMElementNextElementSibling" (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
"next-element-sibling" ManagedPtr DOMElement -> DOMElement
DOMElement

#if defined(ENABLE_OVERLOADING)
data DOMElementNextElementSiblingPropertyInfo
instance AttrInfo DOMElementNextElementSiblingPropertyInfo where
    type AttrAllowedOps DOMElementNextElementSiblingPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementNextElementSiblingPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementNextElementSiblingPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementNextElementSiblingPropertyInfo = (~) ()
    type AttrTransferType DOMElementNextElementSiblingPropertyInfo = ()
    type AttrGetType DOMElementNextElementSiblingPropertyInfo = DOMElement
    type AttrLabel DOMElementNextElementSiblingPropertyInfo = "next-element-sibling"
    type AttrOrigin DOMElementNextElementSiblingPropertyInfo = DOMElement
    attrGet = getDOMElementNextElementSibling
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "offset-height"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@offset-height@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #offsetHeight
-- @
getDOMElementOffsetHeight :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementOffsetHeight :: o -> m Double
getDOMElementOffsetHeight o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"offset-height"

#if defined(ENABLE_OVERLOADING)
data DOMElementOffsetHeightPropertyInfo
instance AttrInfo DOMElementOffsetHeightPropertyInfo where
    type AttrAllowedOps DOMElementOffsetHeightPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementOffsetHeightPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOffsetHeightPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementOffsetHeightPropertyInfo = (~) ()
    type AttrTransferType DOMElementOffsetHeightPropertyInfo = ()
    type AttrGetType DOMElementOffsetHeightPropertyInfo = Double
    type AttrLabel DOMElementOffsetHeightPropertyInfo = "offset-height"
    type AttrOrigin DOMElementOffsetHeightPropertyInfo = DOMElement
    attrGet = getDOMElementOffsetHeight
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "offset-left"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@offset-left@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #offsetLeft
-- @
getDOMElementOffsetLeft :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementOffsetLeft :: o -> m Double
getDOMElementOffsetLeft o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"offset-left"

#if defined(ENABLE_OVERLOADING)
data DOMElementOffsetLeftPropertyInfo
instance AttrInfo DOMElementOffsetLeftPropertyInfo where
    type AttrAllowedOps DOMElementOffsetLeftPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementOffsetLeftPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOffsetLeftPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementOffsetLeftPropertyInfo = (~) ()
    type AttrTransferType DOMElementOffsetLeftPropertyInfo = ()
    type AttrGetType DOMElementOffsetLeftPropertyInfo = Double
    type AttrLabel DOMElementOffsetLeftPropertyInfo = "offset-left"
    type AttrOrigin DOMElementOffsetLeftPropertyInfo = DOMElement
    attrGet = getDOMElementOffsetLeft
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

-- | Get the value of the “@offset-parent@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #offsetParent
-- @
getDOMElementOffsetParent :: (MonadIO m, IsDOMElement o) => o -> m DOMElement
getDOMElementOffsetParent :: o -> m DOMElement
getDOMElementOffsetParent 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
"getDOMElementOffsetParent" (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
"offset-parent" ManagedPtr DOMElement -> DOMElement
DOMElement

#if defined(ENABLE_OVERLOADING)
data DOMElementOffsetParentPropertyInfo
instance AttrInfo DOMElementOffsetParentPropertyInfo where
    type AttrAllowedOps DOMElementOffsetParentPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementOffsetParentPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOffsetParentPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementOffsetParentPropertyInfo = (~) ()
    type AttrTransferType DOMElementOffsetParentPropertyInfo = ()
    type AttrGetType DOMElementOffsetParentPropertyInfo = DOMElement
    type AttrLabel DOMElementOffsetParentPropertyInfo = "offset-parent"
    type AttrOrigin DOMElementOffsetParentPropertyInfo = DOMElement
    attrGet = getDOMElementOffsetParent
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "offset-top"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@offset-top@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #offsetTop
-- @
getDOMElementOffsetTop :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementOffsetTop :: o -> m Double
getDOMElementOffsetTop o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"offset-top"

#if defined(ENABLE_OVERLOADING)
data DOMElementOffsetTopPropertyInfo
instance AttrInfo DOMElementOffsetTopPropertyInfo where
    type AttrAllowedOps DOMElementOffsetTopPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementOffsetTopPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOffsetTopPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementOffsetTopPropertyInfo = (~) ()
    type AttrTransferType DOMElementOffsetTopPropertyInfo = ()
    type AttrGetType DOMElementOffsetTopPropertyInfo = Double
    type AttrLabel DOMElementOffsetTopPropertyInfo = "offset-top"
    type AttrOrigin DOMElementOffsetTopPropertyInfo = DOMElement
    attrGet = getDOMElementOffsetTop
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "offset-width"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@offset-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #offsetWidth
-- @
getDOMElementOffsetWidth :: (MonadIO m, IsDOMElement o) => o -> m Double
getDOMElementOffsetWidth :: o -> m Double
getDOMElementOffsetWidth o
obj = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Double
forall a. GObject a => a -> String -> IO Double
B.Properties.getObjectPropertyDouble o
obj String
"offset-width"

#if defined(ENABLE_OVERLOADING)
data DOMElementOffsetWidthPropertyInfo
instance AttrInfo DOMElementOffsetWidthPropertyInfo where
    type AttrAllowedOps DOMElementOffsetWidthPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementOffsetWidthPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOffsetWidthPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementOffsetWidthPropertyInfo = (~) ()
    type AttrTransferType DOMElementOffsetWidthPropertyInfo = ()
    type AttrGetType DOMElementOffsetWidthPropertyInfo = Double
    type AttrLabel DOMElementOffsetWidthPropertyInfo = "offset-width"
    type AttrOrigin DOMElementOffsetWidthPropertyInfo = DOMElement
    attrGet = getDOMElementOffsetWidth
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "outer-html"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@outer-html@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #outerHtml
-- @
getDOMElementOuterHtml :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementOuterHtml :: o -> m (Maybe Text)
getDOMElementOuterHtml o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"outer-html"

-- | Set the value of the “@outer-html@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMElement [ #outerHtml 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMElementOuterHtml :: (MonadIO m, IsDOMElement o) => o -> T.Text -> m ()
setDOMElementOuterHtml :: o -> Text -> m ()
setDOMElementOuterHtml o
obj Text
val = IO () -> m ()
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
"outer-html" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

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

-- | Set the value of the “@outer-html@” 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' #outerHtml
-- @
clearDOMElementOuterHtml :: (MonadIO m, IsDOMElement o) => o -> m ()
clearDOMElementOuterHtml :: o -> m ()
clearDOMElementOuterHtml o
obj = IO () -> m ()
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
"outer-html" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data DOMElementOuterHtmlPropertyInfo
instance AttrInfo DOMElementOuterHtmlPropertyInfo where
    type AttrAllowedOps DOMElementOuterHtmlPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementOuterHtmlPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementOuterHtmlPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMElementOuterHtmlPropertyInfo = (~) T.Text
    type AttrTransferType DOMElementOuterHtmlPropertyInfo = T.Text
    type AttrGetType DOMElementOuterHtmlPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementOuterHtmlPropertyInfo = "outer-html"
    type AttrOrigin DOMElementOuterHtmlPropertyInfo = DOMElement
    attrGet = getDOMElementOuterHtml
    attrSet = setDOMElementOuterHtml
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementOuterHtml
    attrClear = clearDOMElementOuterHtml
#endif

-- VVV Prop "prefix"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@prefix@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #prefix
-- @
getDOMElementPrefix :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementPrefix :: o -> m (Maybe Text)
getDOMElementPrefix o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"prefix"

#if defined(ENABLE_OVERLOADING)
data DOMElementPrefixPropertyInfo
instance AttrInfo DOMElementPrefixPropertyInfo where
    type AttrAllowedOps DOMElementPrefixPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementPrefixPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementPrefixPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementPrefixPropertyInfo = (~) ()
    type AttrTransferType DOMElementPrefixPropertyInfo = ()
    type AttrGetType DOMElementPrefixPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementPrefixPropertyInfo = "prefix"
    type AttrOrigin DOMElementPrefixPropertyInfo = DOMElement
    attrGet = getDOMElementPrefix
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

-- | Get the value of the “@previous-element-sibling@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #previousElementSibling
-- @
getDOMElementPreviousElementSibling :: (MonadIO m, IsDOMElement o) => o -> m DOMElement
getDOMElementPreviousElementSibling :: o -> m DOMElement
getDOMElementPreviousElementSibling 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
"getDOMElementPreviousElementSibling" (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
"previous-element-sibling" ManagedPtr DOMElement -> DOMElement
DOMElement

#if defined(ENABLE_OVERLOADING)
data DOMElementPreviousElementSiblingPropertyInfo
instance AttrInfo DOMElementPreviousElementSiblingPropertyInfo where
    type AttrAllowedOps DOMElementPreviousElementSiblingPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementPreviousElementSiblingPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementPreviousElementSiblingPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementPreviousElementSiblingPropertyInfo = (~) ()
    type AttrTransferType DOMElementPreviousElementSiblingPropertyInfo = ()
    type AttrGetType DOMElementPreviousElementSiblingPropertyInfo = DOMElement
    type AttrLabel DOMElementPreviousElementSiblingPropertyInfo = "previous-element-sibling"
    type AttrOrigin DOMElementPreviousElementSiblingPropertyInfo = DOMElement
    attrGet = getDOMElementPreviousElementSibling
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "scroll-height"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@scroll-height@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #scrollHeight
-- @
getDOMElementScrollHeight :: (MonadIO m, IsDOMElement o) => o -> m CLong
getDOMElementScrollHeight :: o -> m CLong
getDOMElementScrollHeight o
obj = IO CLong -> m CLong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CLong -> m CLong) -> IO CLong -> m CLong
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CLong
forall a. GObject a => a -> String -> IO CLong
B.Properties.getObjectPropertyLong o
obj String
"scroll-height"

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollHeightPropertyInfo
instance AttrInfo DOMElementScrollHeightPropertyInfo where
    type AttrAllowedOps DOMElementScrollHeightPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementScrollHeightPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementScrollHeightPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementScrollHeightPropertyInfo = (~) ()
    type AttrTransferType DOMElementScrollHeightPropertyInfo = ()
    type AttrGetType DOMElementScrollHeightPropertyInfo = CLong
    type AttrLabel DOMElementScrollHeightPropertyInfo = "scroll-height"
    type AttrOrigin DOMElementScrollHeightPropertyInfo = DOMElement
    attrGet = getDOMElementScrollHeight
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "scroll-left"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@scroll-left@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #scrollLeft
-- @
getDOMElementScrollLeft :: (MonadIO m, IsDOMElement o) => o -> m CLong
getDOMElementScrollLeft :: o -> m CLong
getDOMElementScrollLeft o
obj = IO CLong -> m CLong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CLong -> m CLong) -> IO CLong -> m CLong
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CLong
forall a. GObject a => a -> String -> IO CLong
B.Properties.getObjectPropertyLong o
obj String
"scroll-left"

-- | Set the value of the “@scroll-left@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMElement [ #scrollLeft 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMElementScrollLeft :: (MonadIO m, IsDOMElement o) => o -> CLong -> m ()
setDOMElementScrollLeft :: o -> CLong -> m ()
setDOMElementScrollLeft o
obj CLong
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> CLong -> IO ()
forall a. GObject a => a -> String -> CLong -> IO ()
B.Properties.setObjectPropertyLong o
obj String
"scroll-left" CLong
val

-- | Construct a `GValueConstruct` with valid value for the “@scroll-left@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMElementScrollLeft :: (IsDOMElement o, MIO.MonadIO m) => CLong -> m (GValueConstruct o)
constructDOMElementScrollLeft :: CLong -> m (GValueConstruct o)
constructDOMElementScrollLeft CLong
val = IO (GValueConstruct o) -> m (GValueConstruct o)
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
$ String -> CLong -> IO (GValueConstruct o)
forall o. String -> CLong -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyLong String
"scroll-left" CLong
val

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollLeftPropertyInfo
instance AttrInfo DOMElementScrollLeftPropertyInfo where
    type AttrAllowedOps DOMElementScrollLeftPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMElementScrollLeftPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementScrollLeftPropertyInfo = (~) CLong
    type AttrTransferTypeConstraint DOMElementScrollLeftPropertyInfo = (~) CLong
    type AttrTransferType DOMElementScrollLeftPropertyInfo = CLong
    type AttrGetType DOMElementScrollLeftPropertyInfo = CLong
    type AttrLabel DOMElementScrollLeftPropertyInfo = "scroll-left"
    type AttrOrigin DOMElementScrollLeftPropertyInfo = DOMElement
    attrGet = getDOMElementScrollLeft
    attrSet = setDOMElementScrollLeft
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementScrollLeft
    attrClear = undefined
#endif

-- VVV Prop "scroll-top"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@scroll-top@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #scrollTop
-- @
getDOMElementScrollTop :: (MonadIO m, IsDOMElement o) => o -> m CLong
getDOMElementScrollTop :: o -> m CLong
getDOMElementScrollTop o
obj = IO CLong -> m CLong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CLong -> m CLong) -> IO CLong -> m CLong
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CLong
forall a. GObject a => a -> String -> IO CLong
B.Properties.getObjectPropertyLong o
obj String
"scroll-top"

-- | Set the value of the “@scroll-top@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMElement [ #scrollTop 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMElementScrollTop :: (MonadIO m, IsDOMElement o) => o -> CLong -> m ()
setDOMElementScrollTop :: o -> CLong -> m ()
setDOMElementScrollTop o
obj CLong
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> CLong -> IO ()
forall a. GObject a => a -> String -> CLong -> IO ()
B.Properties.setObjectPropertyLong o
obj String
"scroll-top" CLong
val

-- | Construct a `GValueConstruct` with valid value for the “@scroll-top@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMElementScrollTop :: (IsDOMElement o, MIO.MonadIO m) => CLong -> m (GValueConstruct o)
constructDOMElementScrollTop :: CLong -> m (GValueConstruct o)
constructDOMElementScrollTop CLong
val = IO (GValueConstruct o) -> m (GValueConstruct o)
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
$ String -> CLong -> IO (GValueConstruct o)
forall o. String -> CLong -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyLong String
"scroll-top" CLong
val

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollTopPropertyInfo
instance AttrInfo DOMElementScrollTopPropertyInfo where
    type AttrAllowedOps DOMElementScrollTopPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMElementScrollTopPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementScrollTopPropertyInfo = (~) CLong
    type AttrTransferTypeConstraint DOMElementScrollTopPropertyInfo = (~) CLong
    type AttrTransferType DOMElementScrollTopPropertyInfo = CLong
    type AttrGetType DOMElementScrollTopPropertyInfo = CLong
    type AttrLabel DOMElementScrollTopPropertyInfo = "scroll-top"
    type AttrOrigin DOMElementScrollTopPropertyInfo = DOMElement
    attrGet = getDOMElementScrollTop
    attrSet = setDOMElementScrollTop
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMElementScrollTop
    attrClear = undefined
#endif

-- VVV Prop "scroll-width"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@scroll-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #scrollWidth
-- @
getDOMElementScrollWidth :: (MonadIO m, IsDOMElement o) => o -> m CLong
getDOMElementScrollWidth :: o -> m CLong
getDOMElementScrollWidth o
obj = IO CLong -> m CLong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CLong -> m CLong) -> IO CLong -> m CLong
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CLong
forall a. GObject a => a -> String -> IO CLong
B.Properties.getObjectPropertyLong o
obj String
"scroll-width"

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollWidthPropertyInfo
instance AttrInfo DOMElementScrollWidthPropertyInfo where
    type AttrAllowedOps DOMElementScrollWidthPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMElementScrollWidthPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementScrollWidthPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementScrollWidthPropertyInfo = (~) ()
    type AttrTransferType DOMElementScrollWidthPropertyInfo = ()
    type AttrGetType DOMElementScrollWidthPropertyInfo = CLong
    type AttrLabel DOMElementScrollWidthPropertyInfo = "scroll-width"
    type AttrOrigin DOMElementScrollWidthPropertyInfo = DOMElement
    attrGet = getDOMElementScrollWidth
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementStylePropertyInfo
instance AttrInfo DOMElementStylePropertyInfo where
    type AttrAllowedOps DOMElementStylePropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementStylePropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementStylePropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementStylePropertyInfo = (~) ()
    type AttrTransferType DOMElementStylePropertyInfo = ()
    type AttrGetType DOMElementStylePropertyInfo = (Maybe WebKit2WebExtension.DOMCSSStyleDeclaration.DOMCSSStyleDeclaration)
    type AttrLabel DOMElementStylePropertyInfo = "style"
    type AttrOrigin DOMElementStylePropertyInfo = DOMElement
    attrGet = getDOMElementStyle
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "tag-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@tag-name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #tagName
-- @
getDOMElementTagName :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementTagName :: o -> m (Maybe Text)
getDOMElementTagName o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"tag-name"

#if defined(ENABLE_OVERLOADING)
data DOMElementTagNamePropertyInfo
instance AttrInfo DOMElementTagNamePropertyInfo where
    type AttrAllowedOps DOMElementTagNamePropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementTagNamePropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementTagNamePropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementTagNamePropertyInfo = (~) ()
    type AttrTransferType DOMElementTagNamePropertyInfo = ()
    type AttrGetType DOMElementTagNamePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementTagNamePropertyInfo = "tag-name"
    type AttrOrigin DOMElementTagNamePropertyInfo = DOMElement
    attrGet = getDOMElementTagName
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "webkit-region-overset"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@webkit-region-overset@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMElement #webkitRegionOverset
-- @
getDOMElementWebkitRegionOverset :: (MonadIO m, IsDOMElement o) => o -> m (Maybe T.Text)
getDOMElementWebkitRegionOverset :: o -> m (Maybe Text)
getDOMElementWebkitRegionOverset o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
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
"webkit-region-overset"

#if defined(ENABLE_OVERLOADING)
data DOMElementWebkitRegionOversetPropertyInfo
instance AttrInfo DOMElementWebkitRegionOversetPropertyInfo where
    type AttrAllowedOps DOMElementWebkitRegionOversetPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMElementWebkitRegionOversetPropertyInfo = IsDOMElement
    type AttrSetTypeConstraint DOMElementWebkitRegionOversetPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMElementWebkitRegionOversetPropertyInfo = (~) ()
    type AttrTransferType DOMElementWebkitRegionOversetPropertyInfo = ()
    type AttrGetType DOMElementWebkitRegionOversetPropertyInfo = (Maybe T.Text)
    type AttrLabel DOMElementWebkitRegionOversetPropertyInfo = "webkit-region-overset"
    type AttrOrigin DOMElementWebkitRegionOversetPropertyInfo = DOMElement
    attrGet = getDOMElementWebkitRegionOverset
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList DOMElement
type instance O.AttributeList DOMElement = DOMElementAttributeList
type DOMElementAttributeList = ('[ '("attributes", DOMElementAttributesPropertyInfo), '("baseUri", WebKit2WebExtension.DOMNode.DOMNodeBaseUriPropertyInfo), '("childElementCount", DOMElementChildElementCountPropertyInfo), '("childNodes", WebKit2WebExtension.DOMNode.DOMNodeChildNodesPropertyInfo), '("children", DOMElementChildrenPropertyInfo), '("classList", DOMElementClassListPropertyInfo), '("className", DOMElementClassNamePropertyInfo), '("clientHeight", DOMElementClientHeightPropertyInfo), '("clientLeft", DOMElementClientLeftPropertyInfo), '("clientTop", DOMElementClientTopPropertyInfo), '("clientWidth", DOMElementClientWidthPropertyInfo), '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("firstChild", WebKit2WebExtension.DOMNode.DOMNodeFirstChildPropertyInfo), '("firstElementChild", DOMElementFirstElementChildPropertyInfo), '("id", DOMElementIdPropertyInfo), '("innerHtml", DOMElementInnerHtmlPropertyInfo), '("lastChild", WebKit2WebExtension.DOMNode.DOMNodeLastChildPropertyInfo), '("lastElementChild", DOMElementLastElementChildPropertyInfo), '("localName", DOMElementLocalNamePropertyInfo), '("namespaceUri", DOMElementNamespaceUriPropertyInfo), '("nextElementSibling", DOMElementNextElementSiblingPropertyInfo), '("nextSibling", WebKit2WebExtension.DOMNode.DOMNodeNextSiblingPropertyInfo), '("nodeName", WebKit2WebExtension.DOMNode.DOMNodeNodeNamePropertyInfo), '("nodeType", WebKit2WebExtension.DOMNode.DOMNodeNodeTypePropertyInfo), '("nodeValue", WebKit2WebExtension.DOMNode.DOMNodeNodeValuePropertyInfo), '("offsetHeight", DOMElementOffsetHeightPropertyInfo), '("offsetLeft", DOMElementOffsetLeftPropertyInfo), '("offsetParent", DOMElementOffsetParentPropertyInfo), '("offsetTop", DOMElementOffsetTopPropertyInfo), '("offsetWidth", DOMElementOffsetWidthPropertyInfo), '("outerHtml", DOMElementOuterHtmlPropertyInfo), '("ownerDocument", WebKit2WebExtension.DOMNode.DOMNodeOwnerDocumentPropertyInfo), '("parentElement", WebKit2WebExtension.DOMNode.DOMNodeParentElementPropertyInfo), '("parentNode", WebKit2WebExtension.DOMNode.DOMNodeParentNodePropertyInfo), '("prefix", DOMElementPrefixPropertyInfo), '("previousElementSibling", DOMElementPreviousElementSiblingPropertyInfo), '("previousSibling", WebKit2WebExtension.DOMNode.DOMNodePreviousSiblingPropertyInfo), '("scrollHeight", DOMElementScrollHeightPropertyInfo), '("scrollLeft", DOMElementScrollLeftPropertyInfo), '("scrollTop", DOMElementScrollTopPropertyInfo), '("scrollWidth", DOMElementScrollWidthPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tagName", DOMElementTagNamePropertyInfo), '("textContent", WebKit2WebExtension.DOMNode.DOMNodeTextContentPropertyInfo), '("webkitRegionOverset", DOMElementWebkitRegionOversetPropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
dOMElementAttributes :: AttrLabelProxy "attributes"
dOMElementAttributes = AttrLabelProxy

dOMElementChildElementCount :: AttrLabelProxy "childElementCount"
dOMElementChildElementCount = AttrLabelProxy

dOMElementChildren :: AttrLabelProxy "children"
dOMElementChildren = AttrLabelProxy

dOMElementClassList :: AttrLabelProxy "classList"
dOMElementClassList = AttrLabelProxy

dOMElementClassName :: AttrLabelProxy "className"
dOMElementClassName = AttrLabelProxy

dOMElementClientHeight :: AttrLabelProxy "clientHeight"
dOMElementClientHeight = AttrLabelProxy

dOMElementClientLeft :: AttrLabelProxy "clientLeft"
dOMElementClientLeft = AttrLabelProxy

dOMElementClientTop :: AttrLabelProxy "clientTop"
dOMElementClientTop = AttrLabelProxy

dOMElementClientWidth :: AttrLabelProxy "clientWidth"
dOMElementClientWidth = AttrLabelProxy

dOMElementFirstElementChild :: AttrLabelProxy "firstElementChild"
dOMElementFirstElementChild = AttrLabelProxy

dOMElementId :: AttrLabelProxy "id"
dOMElementId = AttrLabelProxy

dOMElementInnerHtml :: AttrLabelProxy "innerHtml"
dOMElementInnerHtml = AttrLabelProxy

dOMElementLastElementChild :: AttrLabelProxy "lastElementChild"
dOMElementLastElementChild = AttrLabelProxy

dOMElementLocalName :: AttrLabelProxy "localName"
dOMElementLocalName = AttrLabelProxy

dOMElementNamespaceUri :: AttrLabelProxy "namespaceUri"
dOMElementNamespaceUri = AttrLabelProxy

dOMElementNextElementSibling :: AttrLabelProxy "nextElementSibling"
dOMElementNextElementSibling = AttrLabelProxy

dOMElementOffsetHeight :: AttrLabelProxy "offsetHeight"
dOMElementOffsetHeight = AttrLabelProxy

dOMElementOffsetLeft :: AttrLabelProxy "offsetLeft"
dOMElementOffsetLeft = AttrLabelProxy

dOMElementOffsetParent :: AttrLabelProxy "offsetParent"
dOMElementOffsetParent = AttrLabelProxy

dOMElementOffsetTop :: AttrLabelProxy "offsetTop"
dOMElementOffsetTop = AttrLabelProxy

dOMElementOffsetWidth :: AttrLabelProxy "offsetWidth"
dOMElementOffsetWidth = AttrLabelProxy

dOMElementOuterHtml :: AttrLabelProxy "outerHtml"
dOMElementOuterHtml = AttrLabelProxy

dOMElementPrefix :: AttrLabelProxy "prefix"
dOMElementPrefix = AttrLabelProxy

dOMElementPreviousElementSibling :: AttrLabelProxy "previousElementSibling"
dOMElementPreviousElementSibling = AttrLabelProxy

dOMElementScrollHeight :: AttrLabelProxy "scrollHeight"
dOMElementScrollHeight = AttrLabelProxy

dOMElementScrollLeft :: AttrLabelProxy "scrollLeft"
dOMElementScrollLeft = AttrLabelProxy

dOMElementScrollTop :: AttrLabelProxy "scrollTop"
dOMElementScrollTop = AttrLabelProxy

dOMElementScrollWidth :: AttrLabelProxy "scrollWidth"
dOMElementScrollWidth = AttrLabelProxy

dOMElementStyle :: AttrLabelProxy "style"
dOMElementStyle = AttrLabelProxy

dOMElementTagName :: AttrLabelProxy "tagName"
dOMElementTagName = AttrLabelProxy

dOMElementWebkitRegionOverset :: AttrLabelProxy "webkitRegionOverset"
dOMElementWebkitRegionOverset = AttrLabelProxy

#endif

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

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementBlurMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementBlurMethodInfo a signature where
    overloadedMethod = dOMElementBlur

#endif

-- method DOMElement::closest
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_closest" webkit_dom_element_closest :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- selectors : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementClosest ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMElementClosest ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@selectors@/: A @/gchar/@
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement' /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementClosest :: a -> Text -> m DOMElement
dOMElementClosest 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
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 DOMElement
-> CString -> Ptr (Ptr GError) -> IO (Ptr DOMElement)
webkit_dom_element_closest Ptr DOMElement
self' CString
selectors'
        Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementClosest" 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
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 DOMElementClosestMethodInfo
instance (signature ~ (T.Text -> m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementClosestMethodInfo a signature where
    overloadedMethod = dOMElementClosest

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementFocusMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementFocusMethodInfo a signature where
    overloadedMethod = dOMElementFocus

#endif

-- method DOMElement::get_attribute
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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 (TBasicType TUTF8)
-- throws : False
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetAttributeMethodInfo
instance (signature ~ (T.Text -> m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetAttributeMethodInfo a signature where
    overloadedMethod = dOMElementGetAttribute

#endif

-- method DOMElement::get_attribute_node
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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 = "DOMAttr" })
-- throws : False
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetAttributeNodeMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMAttr.DOMAttr), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetAttributeNodeMethodInfo a signature where
    overloadedMethod = dOMElementGetAttributeNode

#endif

-- method DOMElement::get_attribute_node_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , 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
--           }
--       , Arg
--           { argCName = "localName"
--           , 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 = "DOMAttr" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_get_attribute_node_ns" webkit_dom_element_get_attribute_node_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- localName : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMAttr.DOMAttr)

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetAttributeNodeNsMethodInfo
instance (signature ~ (T.Text -> T.Text -> m WebKit2WebExtension.DOMAttr.DOMAttr), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetAttributeNodeNsMethodInfo a signature where
    overloadedMethod = dOMElementGetAttributeNodeNs

#endif

-- method DOMElement::get_attribute_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , 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
--           }
--       , Arg
--           { argCName = "localName"
--           , 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 (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_get_attribute_ns" webkit_dom_element_get_attribute_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- localName : TBasicType TUTF8
    IO CString

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetAttributeNsMethodInfo
instance (signature ~ (T.Text -> T.Text -> m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetAttributeNsMethodInfo a signature where
    overloadedMethod = dOMElementGetAttributeNs

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetAttributesMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMNamedNodeMap.DOMNamedNodeMap), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetAttributesMethodInfo a signature where
    overloadedMethod = dOMElementGetAttributes

#endif

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

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

{-# DEPRECATED dOMElementGetBoundingClientRect ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | Returns a t'GI.WebKit2WebExtension.Objects.DOMClientRect.DOMClientRect' representing the size and position of /@self@/
-- relative to the viewport.
-- 
-- /Since: 2.18/
dOMElementGetBoundingClientRect ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m WebKit2WebExtension.DOMClientRect.DOMClientRect
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMClientRect.DOMClientRect'
dOMElementGetBoundingClientRect :: a -> m DOMClientRect
dOMElementGetBoundingClientRect a
self = IO DOMClientRect -> m DOMClientRect
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMClientRect -> m DOMClientRect)
-> IO DOMClientRect -> m DOMClientRect
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMClientRect
result <- Ptr DOMElement -> IO (Ptr DOMClientRect)
webkit_dom_element_get_bounding_client_rect Ptr DOMElement
self'
    Text -> Ptr DOMClientRect -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetBoundingClientRect" Ptr DOMClientRect
result
    DOMClientRect
result' <- ((ManagedPtr DOMClientRect -> DOMClientRect)
-> Ptr DOMClientRect -> IO DOMClientRect
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr DOMClientRect -> DOMClientRect
WebKit2WebExtension.DOMClientRect.DOMClientRect) Ptr DOMClientRect
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMClientRect -> IO DOMClientRect
forall (m :: * -> *) a. Monad m => a -> m a
return DOMClientRect
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetBoundingClientRectMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMClientRect.DOMClientRect), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetBoundingClientRectMethodInfo a signature where
    overloadedMethod = dOMElementGetBoundingClientRect

#endif

-- method DOMElement::get_child_element_count
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_child_element_count" webkit_dom_element_get_child_element_count :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO CULong

{-# DEPRECATED dOMElementGetChildElementCount ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetChildElementCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m CULong
    -- ^ __Returns:__ A @/gulong/@
dOMElementGetChildElementCount :: a -> m CULong
dOMElementGetChildElementCount 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CULong
result <- Ptr DOMElement -> IO CULong
webkit_dom_element_get_child_element_count Ptr DOMElement
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 DOMElementGetChildElementCountMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetChildElementCountMethodInfo a signature where
    overloadedMethod = dOMElementGetChildElementCount

#endif

-- method DOMElement::get_children
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_children" webkit_dom_element_get_children :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)

{-# DEPRECATED dOMElementGetChildren ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.10/
dOMElementGetChildren ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLCollection.DOMHTMLCollection'
dOMElementGetChildren :: a -> m DOMHTMLCollection
dOMElementGetChildren 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMHTMLCollection
result <- Ptr DOMElement -> IO (Ptr DOMHTMLCollection)
webkit_dom_element_get_children Ptr DOMElement
self'
    Text -> Ptr DOMHTMLCollection -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetChildren" 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 DOMElementGetChildrenMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetChildrenMethodInfo a signature where
    overloadedMethod = dOMElementGetChildren

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClassListMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMDOMTokenList.DOMDOMTokenList), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClassListMethodInfo a signature where
    overloadedMethod = dOMElementGetClassList

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClassNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClassNameMethodInfo a signature where
    overloadedMethod = dOMElementGetClassName

#endif

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

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

{-# DEPRECATED dOMElementGetClientHeight ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetClientHeight ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetClientHeight :: a -> m Double
dOMElementGetClientHeight a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_client_height Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClientHeightMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClientHeightMethodInfo a signature where
    overloadedMethod = dOMElementGetClientHeight

#endif

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

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

{-# DEPRECATED dOMElementGetClientLeft ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetClientLeft ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetClientLeft :: a -> m Double
dOMElementGetClientLeft a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_client_left Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClientLeftMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClientLeftMethodInfo a signature where
    overloadedMethod = dOMElementGetClientLeft

#endif

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

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

{-# DEPRECATED dOMElementGetClientRects ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | Returns a collection of t'GI.WebKit2WebExtension.Objects.DOMClientRect.DOMClientRect' objects, each of which describe
-- the size and position of a CSS border box relative to the viewport.
-- 
-- /Since: 2.18/
dOMElementGetClientRects ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m WebKit2WebExtension.DOMClientRectList.DOMClientRectList
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMClientRectList.DOMClientRectList'
dOMElementGetClientRects :: a -> m DOMClientRectList
dOMElementGetClientRects a
self = IO DOMClientRectList -> m DOMClientRectList
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMClientRectList -> m DOMClientRectList)
-> IO DOMClientRectList -> m DOMClientRectList
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMClientRectList
result <- Ptr DOMElement -> IO (Ptr DOMClientRectList)
webkit_dom_element_get_client_rects Ptr DOMElement
self'
    Text -> Ptr DOMClientRectList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetClientRects" Ptr DOMClientRectList
result
    DOMClientRectList
result' <- ((ManagedPtr DOMClientRectList -> DOMClientRectList)
-> Ptr DOMClientRectList -> IO DOMClientRectList
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr DOMClientRectList -> DOMClientRectList
WebKit2WebExtension.DOMClientRectList.DOMClientRectList) Ptr DOMClientRectList
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMClientRectList -> IO DOMClientRectList
forall (m :: * -> *) a. Monad m => a -> m a
return DOMClientRectList
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClientRectsMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMClientRectList.DOMClientRectList), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClientRectsMethodInfo a signature where
    overloadedMethod = dOMElementGetClientRects

#endif

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

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

{-# DEPRECATED dOMElementGetClientTop ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetClientTop ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetClientTop :: a -> m Double
dOMElementGetClientTop a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_client_top Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClientTopMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClientTopMethodInfo a signature where
    overloadedMethod = dOMElementGetClientTop

#endif

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

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

{-# DEPRECATED dOMElementGetClientWidth ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetClientWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetClientWidth :: a -> m Double
dOMElementGetClientWidth a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_client_width Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetClientWidthMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetClientWidthMethodInfo a signature where
    overloadedMethod = dOMElementGetClientWidth

#endif

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

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

{-# DEPRECATED dOMElementGetElementsByClassName ["(Since version 2.12)","Use 'GI.WebKit2WebExtension.Objects.DOMElement.dOMElementGetElementsByClassNameAsHtmlCollection' instead."] #-}
-- | /No description available in the introspection data./
dOMElementGetElementsByClassName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@className@/: a @/gchar/@ with the tag name
    -> m WebKit2WebExtension.DOMNodeList.DOMNodeList
    -- ^ __Returns:__ a t'GI.WebKit2WebExtension.Objects.DOMNodeList.DOMNodeList'
dOMElementGetElementsByClassName :: a -> Text -> m DOMNodeList
dOMElementGetElementsByClassName a
self Text
className = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
className' <- Text -> IO CString
textToCString Text
className
    Ptr DOMNodeList
result <- Ptr DOMElement -> CString -> IO (Ptr DOMNodeList)
webkit_dom_element_get_elements_by_class_name Ptr DOMElement
self' CString
className'
    Text -> Ptr DOMNodeList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByClassName" 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
className'
    DOMNodeList -> IO DOMNodeList
forall (m :: * -> *) a. Monad m => a -> m a
return DOMNodeList
result'

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

#endif

-- method DOMElement::get_elements_by_class_name_as_html_collection
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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 = "DOMHTMLCollection" })
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementGetElementsByClassNameAsHtmlCollection ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.12/
dOMElementGetElementsByClassNameAsHtmlCollection ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@name@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLCollection.DOMHTMLCollection'
dOMElementGetElementsByClassNameAsHtmlCollection :: a -> Text -> m DOMHTMLCollection
dOMElementGetElementsByClassNameAsHtmlCollection a
self Text
name = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
name' <- Text -> IO CString
textToCString Text
name
    Ptr DOMHTMLCollection
result <- Ptr DOMElement -> CString -> IO (Ptr DOMHTMLCollection)
webkit_dom_element_get_elements_by_class_name_as_html_collection Ptr DOMElement
self' CString
name'
    Text -> Ptr DOMHTMLCollection -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByClassNameAsHtmlCollection" 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
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
    DOMHTMLCollection -> IO DOMHTMLCollection
forall (m :: * -> *) a. Monad m => a -> m a
return DOMHTMLCollection
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo a signature where
    overloadedMethod = dOMElementGetElementsByClassNameAsHtmlCollection

#endif

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

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

{-# DEPRECATED dOMElementGetElementsByTagName ["(Since version 2.12)","Use 'GI.WebKit2WebExtension.Objects.DOMElement.dOMElementGetElementsByTagNameAsHtmlCollection' instead."] #-}
-- | /No description available in the introspection data./
dOMElementGetElementsByTagName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@tagName@/: a @/gchar/@ with the tag name
    -> m WebKit2WebExtension.DOMNodeList.DOMNodeList
    -- ^ __Returns:__ a t'GI.WebKit2WebExtension.Objects.DOMNodeList.DOMNodeList'
dOMElementGetElementsByTagName :: a -> Text -> m DOMNodeList
dOMElementGetElementsByTagName a
self Text
tagName = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
tagName' <- Text -> IO CString
textToCString Text
tagName
    Ptr DOMNodeList
result <- Ptr DOMElement -> CString -> IO (Ptr DOMNodeList)
webkit_dom_element_get_elements_by_tag_name Ptr DOMElement
self' CString
tagName'
    Text -> Ptr DOMNodeList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByTagName" 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
tagName'
    DOMNodeList -> IO DOMNodeList
forall (m :: * -> *) a. Monad m => a -> m a
return DOMNodeList
result'

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

#endif

-- method DOMElement::get_elements_by_tag_name_as_html_collection
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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 = "DOMHTMLCollection" })
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementGetElementsByTagNameAsHtmlCollection ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.12/
dOMElementGetElementsByTagNameAsHtmlCollection ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@name@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLCollection.DOMHTMLCollection'
dOMElementGetElementsByTagNameAsHtmlCollection :: a -> Text -> m DOMHTMLCollection
dOMElementGetElementsByTagNameAsHtmlCollection a
self Text
name = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
name' <- Text -> IO CString
textToCString Text
name
    Ptr DOMHTMLCollection
result <- Ptr DOMElement -> CString -> IO (Ptr DOMHTMLCollection)
webkit_dom_element_get_elements_by_tag_name_as_html_collection Ptr DOMElement
self' CString
name'
    Text -> Ptr DOMHTMLCollection -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByTagNameAsHtmlCollection" 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
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
    DOMHTMLCollection -> IO DOMHTMLCollection
forall (m :: * -> *) a. Monad m => a -> m a
return DOMHTMLCollection
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo a signature where
    overloadedMethod = dOMElementGetElementsByTagNameAsHtmlCollection

#endif

-- method DOMElement::get_elements_by_tag_name_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespace_uri"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #gchar with the namespace URI"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "tag_name"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #gchar with the tag name"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMNodeList" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_get_elements_by_tag_name_ns" webkit_dom_element_get_elements_by_tag_name_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespace_uri : TBasicType TUTF8
    CString ->                              -- tag_name : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMNodeList.DOMNodeList)

{-# DEPRECATED dOMElementGetElementsByTagNameNs ["(Since version 2.12)","Use 'GI.WebKit2WebExtension.Objects.DOMElement.dOMElementGetElementsByTagNameNsAsHtmlCollection' instead."] #-}
-- | /No description available in the introspection data./
dOMElementGetElementsByTagNameNs ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@namespaceUri@/: a @/gchar/@ with the namespace URI
    -> T.Text
    -- ^ /@tagName@/: a @/gchar/@ with the tag name
    -> m WebKit2WebExtension.DOMNodeList.DOMNodeList
    -- ^ __Returns:__ a t'GI.WebKit2WebExtension.Objects.DOMNodeList.DOMNodeList'
dOMElementGetElementsByTagNameNs :: a -> Text -> Text -> m DOMNodeList
dOMElementGetElementsByTagNameNs a
self Text
namespaceUri Text
tagName = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
namespaceUri' <- Text -> IO CString
textToCString Text
namespaceUri
    CString
tagName' <- Text -> IO CString
textToCString Text
tagName
    Ptr DOMNodeList
result <- Ptr DOMElement -> CString -> CString -> IO (Ptr DOMNodeList)
webkit_dom_element_get_elements_by_tag_name_ns Ptr DOMElement
self' CString
namespaceUri' CString
tagName'
    Text -> Ptr DOMNodeList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByTagNameNs" 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
namespaceUri'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
tagName'
    DOMNodeList -> IO DOMNodeList
forall (m :: * -> *) a. Monad m => a -> m a
return DOMNodeList
result'

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

#endif

-- method DOMElement::get_elements_by_tag_name_ns_as_html_collection
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , 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
--           }
--       , Arg
--           { argCName = "localName"
--           , 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 = "DOMHTMLCollection" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_get_elements_by_tag_name_ns_as_html_collection" webkit_dom_element_get_elements_by_tag_name_ns_as_html_collection :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- localName : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)

{-# DEPRECATED dOMElementGetElementsByTagNameNsAsHtmlCollection ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.12/
dOMElementGetElementsByTagNameNsAsHtmlCollection ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@namespaceURI@/: A @/gchar/@
    -> T.Text
    -- ^ /@localName@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLCollection.DOMHTMLCollection'
dOMElementGetElementsByTagNameNsAsHtmlCollection :: a -> Text -> Text -> m DOMHTMLCollection
dOMElementGetElementsByTagNameNsAsHtmlCollection a
self Text
namespaceURI Text
localName = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
namespaceURI' <- Text -> IO CString
textToCString Text
namespaceURI
    CString
localName' <- Text -> IO CString
textToCString Text
localName
    Ptr DOMHTMLCollection
result <- Ptr DOMElement -> CString -> CString -> IO (Ptr DOMHTMLCollection)
webkit_dom_element_get_elements_by_tag_name_ns_as_html_collection Ptr DOMElement
self' CString
namespaceURI' CString
localName'
    Text -> Ptr DOMHTMLCollection -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetElementsByTagNameNsAsHtmlCollection" 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
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
namespaceURI'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
localName'
    DOMHTMLCollection -> IO DOMHTMLCollection
forall (m :: * -> *) a. Monad m => a -> m a
return DOMHTMLCollection
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo
instance (signature ~ (T.Text -> T.Text -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo a signature where
    overloadedMethod = dOMElementGetElementsByTagNameNsAsHtmlCollection

#endif

-- method DOMElement::get_first_element_child
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_first_element_child" webkit_dom_element_get_first_element_child :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementGetFirstElementChild ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetFirstElementChild ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMElementGetFirstElementChild :: a -> m DOMElement
dOMElementGetFirstElementChild 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMElement -> IO (Ptr DOMElement)
webkit_dom_element_get_first_element_child Ptr DOMElement
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetFirstElementChild" 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
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 DOMElementGetFirstElementChildMethodInfo
instance (signature ~ (m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetFirstElementChildMethodInfo a signature where
    overloadedMethod = dOMElementGetFirstElementChild

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetIdMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetIdMethodInfo a signature where
    overloadedMethod = dOMElementGetId

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetInnerHtmlMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetInnerHtmlMethodInfo a signature where
    overloadedMethod = dOMElementGetInnerHtml

#endif

-- method DOMElement::get_last_element_child
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_last_element_child" webkit_dom_element_get_last_element_child :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementGetLastElementChild ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetLastElementChild ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMElementGetLastElementChild :: a -> m DOMElement
dOMElementGetLastElementChild 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMElement -> IO (Ptr DOMElement)
webkit_dom_element_get_last_element_child Ptr DOMElement
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetLastElementChild" 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
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 DOMElementGetLastElementChildMethodInfo
instance (signature ~ (m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetLastElementChildMethodInfo a signature where
    overloadedMethod = dOMElementGetLastElementChild

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetLocalNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetLocalNameMethodInfo a signature where
    overloadedMethod = dOMElementGetLocalName

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetNamespaceUriMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetNamespaceUriMethodInfo a signature where
    overloadedMethod = dOMElementGetNamespaceUri

#endif

-- method DOMElement::get_next_element_sibling
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_next_element_sibling" webkit_dom_element_get_next_element_sibling :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementGetNextElementSibling ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetNextElementSibling ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMElementGetNextElementSibling :: a -> m DOMElement
dOMElementGetNextElementSibling 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMElement -> IO (Ptr DOMElement)
webkit_dom_element_get_next_element_sibling Ptr DOMElement
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetNextElementSibling" 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
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 DOMElementGetNextElementSiblingMethodInfo
instance (signature ~ (m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetNextElementSiblingMethodInfo a signature where
    overloadedMethod = dOMElementGetNextElementSibling

#endif

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

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

{-# DEPRECATED dOMElementGetOffsetHeight ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetOffsetHeight ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetOffsetHeight :: a -> m Double
dOMElementGetOffsetHeight a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_offset_height Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetOffsetHeightMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOffsetHeightMethodInfo a signature where
    overloadedMethod = dOMElementGetOffsetHeight

#endif

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

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

{-# DEPRECATED dOMElementGetOffsetLeft ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetOffsetLeft ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetOffsetLeft :: a -> m Double
dOMElementGetOffsetLeft a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_offset_left Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetOffsetLeftMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOffsetLeftMethodInfo a signature where
    overloadedMethod = dOMElementGetOffsetLeft

#endif

-- method DOMElement::get_offset_parent
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_offset_parent" webkit_dom_element_get_offset_parent :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementGetOffsetParent ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetOffsetParent ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMElementGetOffsetParent :: a -> m DOMElement
dOMElementGetOffsetParent 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMElement -> IO (Ptr DOMElement)
webkit_dom_element_get_offset_parent Ptr DOMElement
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetOffsetParent" 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
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 DOMElementGetOffsetParentMethodInfo
instance (signature ~ (m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOffsetParentMethodInfo a signature where
    overloadedMethod = dOMElementGetOffsetParent

#endif

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

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

{-# DEPRECATED dOMElementGetOffsetTop ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetOffsetTop ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetOffsetTop :: a -> m Double
dOMElementGetOffsetTop a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_offset_top Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetOffsetTopMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOffsetTopMethodInfo a signature where
    overloadedMethod = dOMElementGetOffsetTop

#endif

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

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

{-# DEPRECATED dOMElementGetOffsetWidth ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetOffsetWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Double
    -- ^ __Returns:__ A @/gdouble/@
dOMElementGetOffsetWidth :: a -> m Double
dOMElementGetOffsetWidth a
self = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CDouble
result <- Ptr DOMElement -> IO CDouble
webkit_dom_element_get_offset_width Ptr DOMElement
self'
    let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetOffsetWidthMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOffsetWidthMethodInfo a signature where
    overloadedMethod = dOMElementGetOffsetWidth

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetOuterHtmlMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetOuterHtmlMethodInfo a signature where
    overloadedMethod = dOMElementGetOuterHtml

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetPrefixMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetPrefixMethodInfo a signature where
    overloadedMethod = dOMElementGetPrefix

#endif

-- method DOMElement::get_previous_element_sibling
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_get_previous_element_sibling" webkit_dom_element_get_previous_element_sibling :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementGetPreviousElementSibling ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementGetPreviousElementSibling ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMElementGetPreviousElementSibling :: a -> m DOMElement
dOMElementGetPreviousElementSibling 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMElement -> IO (Ptr DOMElement)
webkit_dom_element_get_previous_element_sibling Ptr DOMElement
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetPreviousElementSibling" 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
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 DOMElementGetPreviousElementSiblingMethodInfo
instance (signature ~ (m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetPreviousElementSiblingMethodInfo a signature where
    overloadedMethod = dOMElementGetPreviousElementSibling

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetScrollHeightMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetScrollHeightMethodInfo a signature where
    overloadedMethod = dOMElementGetScrollHeight

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetScrollLeftMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetScrollLeftMethodInfo a signature where
    overloadedMethod = dOMElementGetScrollLeft

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetScrollTopMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetScrollTopMethodInfo a signature where
    overloadedMethod = dOMElementGetScrollTop

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetScrollWidthMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetScrollWidthMethodInfo a signature where
    overloadedMethod = dOMElementGetScrollWidth

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetStyleMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMCSSStyleDeclaration.DOMCSSStyleDeclaration), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetStyleMethodInfo a signature where
    overloadedMethod = dOMElementGetStyle

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementGetTagNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetTagNameMethodInfo a signature where
    overloadedMethod = dOMElementGetTagName

#endif

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

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

{-# DEPRECATED dOMElementGetWebkitRegionOverset ["(Since version 2.20)"] #-}
-- | CSS Regions support has been removed. This function does nothing.
dOMElementGetWebkitRegionOverset ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m T.Text
    -- ^ __Returns:__ 'P.Nothing'
dOMElementGetWebkitRegionOverset :: a -> m Text
dOMElementGetWebkitRegionOverset a
self = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
result <- Ptr DOMElement -> IO CString
webkit_dom_element_get_webkit_region_overset Ptr DOMElement
self'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementGetWebkitRegionOverset" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementGetWebkitRegionOversetMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementGetWebkitRegionOversetMethodInfo a signature where
    overloadedMethod = dOMElementGetWebkitRegionOverset

#endif

-- method DOMElement::has_attribute
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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 (TBasicType TBoolean)
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementHasAttribute ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementHasAttribute ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@name@/: A @/gchar/@
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMElementHasAttribute :: a -> Text -> m Bool
dOMElementHasAttribute a
self Text
name = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
name' <- Text -> IO CString
textToCString Text
name
    CInt
result <- Ptr DOMElement -> CString -> IO CInt
webkit_dom_element_has_attribute Ptr DOMElement
self' CString
name'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementHasAttributeMethodInfo
instance (signature ~ (T.Text -> m Bool), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHasAttributeMethodInfo a signature where
    overloadedMethod = dOMElementHasAttribute

#endif

-- method DOMElement::has_attribute_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , 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
--           }
--       , Arg
--           { argCName = "localName"
--           , 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 (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_has_attribute_ns" webkit_dom_element_has_attribute_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- localName : TBasicType TUTF8
    IO CInt

{-# DEPRECATED dOMElementHasAttributeNs ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementHasAttributeNs ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@namespaceURI@/: A @/gchar/@
    -> T.Text
    -- ^ /@localName@/: A @/gchar/@
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMElementHasAttributeNs :: a -> Text -> Text -> m Bool
dOMElementHasAttributeNs a
self Text
namespaceURI Text
localName = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
namespaceURI' <- Text -> IO CString
textToCString Text
namespaceURI
    CString
localName' <- Text -> IO CString
textToCString Text
localName
    CInt
result <- Ptr DOMElement -> CString -> CString -> IO CInt
webkit_dom_element_has_attribute_ns Ptr DOMElement
self' CString
namespaceURI' CString
localName'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
namespaceURI'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
localName'
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementHasAttributeNsMethodInfo
instance (signature ~ (T.Text -> T.Text -> m Bool), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHasAttributeNsMethodInfo a signature where
    overloadedMethod = dOMElementHasAttributeNs

#endif

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

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

{-# DEPRECATED dOMElementHasAttributes ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementHasAttributes ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMElementHasAttributes :: a -> m Bool
dOMElementHasAttributes a
self = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CInt
result <- Ptr DOMElement -> IO CInt
webkit_dom_element_has_attributes Ptr DOMElement
self'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementHasAttributesMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHasAttributesMethodInfo a signature where
    overloadedMethod = dOMElementHasAttributes

#endif

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

foreign import ccall "webkit_dom_element_html_input_element_get_auto_filled" webkit_dom_element_html_input_element_get_auto_filled :: 
    Ptr DOMElement ->                       -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO CInt

-- | /No description available in the introspection data./
dOMElementHtmlInputElementGetAutoFilled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -> m Bool
dOMElementHtmlInputElementGetAutoFilled :: a -> m Bool
dOMElementHtmlInputElementGetAutoFilled a
element = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
element' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
element
    CInt
result <- Ptr DOMElement -> IO CInt
webkit_dom_element_html_input_element_get_auto_filled Ptr DOMElement
element'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
element
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementHtmlInputElementGetAutoFilledMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHtmlInputElementGetAutoFilledMethodInfo a signature where
    overloadedMethod = dOMElementHtmlInputElementGetAutoFilled

#endif

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

foreign import ccall "webkit_dom_element_html_input_element_is_user_edited" webkit_dom_element_html_input_element_is_user_edited :: 
    Ptr DOMElement ->                       -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    IO CInt

-- | Get whether /@element@/ is an HTML text input element that has been edited by a user action.
-- 
-- /Since: 2.22/
dOMElementHtmlInputElementIsUserEdited ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@element@/: a t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m Bool
    -- ^ __Returns:__ whether /@element@/ has been edited by a user action.
dOMElementHtmlInputElementIsUserEdited :: a -> m Bool
dOMElementHtmlInputElementIsUserEdited a
element = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
element' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
element
    CInt
result <- Ptr DOMElement -> IO CInt
webkit_dom_element_html_input_element_is_user_edited Ptr DOMElement
element'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
element
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMElementHtmlInputElementIsUserEditedMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHtmlInputElementIsUserEditedMethodInfo a signature where
    overloadedMethod = dOMElementHtmlInputElementIsUserEdited

#endif

-- method DOMElement::html_input_element_set_auto_filled
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "element"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "auto_filled"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "value to set" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_html_input_element_set_auto_filled" webkit_dom_element_html_input_element_set_auto_filled :: 
    Ptr DOMElement ->                       -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CInt ->                                 -- auto_filled : TBasicType TBoolean
    IO ()

-- | Set whether the element is an HTML input element that has been filled automatically.
-- If /@element@/ is not an HTML input element this function does nothing.
-- 
-- /Since: 2.22/
dOMElementHtmlInputElementSetAutoFilled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@element@/: a t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> Bool
    -- ^ /@autoFilled@/: value to set
    -> m ()
dOMElementHtmlInputElementSetAutoFilled :: a -> Bool -> m ()
dOMElementHtmlInputElementSetAutoFilled a
element Bool
autoFilled = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
element' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
element
    let autoFilled' :: CInt
autoFilled' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
autoFilled
    Ptr DOMElement -> CInt -> IO ()
webkit_dom_element_html_input_element_set_auto_filled Ptr DOMElement
element' CInt
autoFilled'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
element
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementHtmlInputElementSetAutoFilledMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHtmlInputElementSetAutoFilledMethodInfo a signature where
    overloadedMethod = dOMElementHtmlInputElementSetAutoFilled

#endif

-- method DOMElement::html_input_element_set_editing_value
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "element"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the text to set" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_html_input_element_set_editing_value" webkit_dom_element_html_input_element_set_editing_value :: 
    Ptr DOMElement ->                       -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

-- | Set the value of an HTML input element as if it had been edited by
-- the user, triggering a change event. If /@element@/ is not an HTML input
-- element this function does nothing.
-- 
-- /Since: 2.22/
dOMElementHtmlInputElementSetEditingValue ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@element@/: a t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@value@/: the text to set
    -> m ()
dOMElementHtmlInputElementSetEditingValue :: a -> Text -> m ()
dOMElementHtmlInputElementSetEditingValue a
element Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
element' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
element
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMElement -> CString -> IO ()
webkit_dom_element_html_input_element_set_editing_value Ptr DOMElement
element' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
element
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementHtmlInputElementSetEditingValueMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementHtmlInputElementSetEditingValueMethodInfo a signature where
    overloadedMethod = dOMElementHtmlInputElementSetEditingValue

#endif

-- method DOMElement::insert_adjacent_element
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "where"
--           , 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
--           }
--       , Arg
--           { argCName = "element"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_insert_adjacent_element" webkit_dom_element_insert_adjacent_element :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- where : TBasicType TUTF8
    Ptr DOMElement ->                       -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementInsertAdjacentElement ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMElementInsertAdjacentElement ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a, IsDOMElement b) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@where@/: A @/gchar/@
    -> b
    -- ^ /@element@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement' /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementInsertAdjacentElement :: a -> Text -> b -> m DOMElement
dOMElementInsertAdjacentElement a
self Text
where_ b
element = 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
where_' <- Text -> IO CString
textToCString Text
where_
    Ptr DOMElement
element' <- b -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
element
    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 DOMElement
-> CString
-> Ptr DOMElement
-> Ptr (Ptr GError)
-> IO (Ptr DOMElement)
webkit_dom_element_insert_adjacent_element Ptr DOMElement
self' CString
where_' Ptr DOMElement
element'
        Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementInsertAdjacentElement" 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
DOMElement) Ptr DOMElement
result
        a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
        b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
element
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
where_'
        DOMElement -> IO DOMElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMElement
result'
     ) (do
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
where_'
     )

#if defined(ENABLE_OVERLOADING)
data DOMElementInsertAdjacentElementMethodInfo
instance (signature ~ (T.Text -> b -> m DOMElement), MonadIO m, IsDOMElement a, IsDOMElement b) => O.MethodInfo DOMElementInsertAdjacentElementMethodInfo a signature where
    overloadedMethod = dOMElementInsertAdjacentElement

#endif

-- method DOMElement::insert_adjacent_html
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "where"
--           , 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
--           }
--       , Arg
--           { argCName = "html"
--           , 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: Nothing
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_element_insert_adjacent_html" webkit_dom_element_insert_adjacent_html :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- where : TBasicType TUTF8
    CString ->                              -- html : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO ()

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

#if defined(ENABLE_OVERLOADING)
data DOMElementInsertAdjacentHtmlMethodInfo
instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementInsertAdjacentHtmlMethodInfo a signature where
    overloadedMethod = dOMElementInsertAdjacentHtml

#endif

-- method DOMElement::insert_adjacent_text
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "where"
--           , 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
--           }
--       , Arg
--           { argCName = "text"
--           , 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: Nothing
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_element_insert_adjacent_text" webkit_dom_element_insert_adjacent_text :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- where : TBasicType TUTF8
    CString ->                              -- text : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO ()

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

#if defined(ENABLE_OVERLOADING)
data DOMElementInsertAdjacentTextMethodInfo
instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementInsertAdjacentTextMethodInfo a signature where
    overloadedMethod = dOMElementInsertAdjacentText

#endif

-- method DOMElement::matches
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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 (TBasicType TBoolean)
-- throws : True
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementMatchesMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementMatchesMethodInfo a signature where
    overloadedMethod = dOMElementMatches

#endif

-- method DOMElement::query_selector
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_query_selector" webkit_dom_element_query_selector :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- selectors : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr DOMElement)

{-# DEPRECATED dOMElementQuerySelector ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementQuerySelector ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@selectors@/: A @/gchar/@
    -> m DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement' /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementQuerySelector :: a -> Text -> m DOMElement
dOMElementQuerySelector 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
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 DOMElement
-> CString -> Ptr (Ptr GError) -> IO (Ptr DOMElement)
webkit_dom_element_query_selector Ptr DOMElement
self' CString
selectors'
        Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementQuerySelector" 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
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 DOMElementQuerySelectorMethodInfo
instance (signature ~ (T.Text -> m DOMElement), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementQuerySelectorMethodInfo a signature where
    overloadedMethod = dOMElementQuerySelector

#endif

-- method DOMElement::query_selector_all
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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_element_query_selector_all" webkit_dom_element_query_selector_all :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- selectors : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMNodeList.DOMNodeList)

{-# DEPRECATED dOMElementQuerySelectorAll ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementQuerySelectorAll ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@selectors@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMNodeList.DOMNodeList
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMNodeList.DOMNodeList' /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementQuerySelectorAll :: a -> Text -> m DOMNodeList
dOMElementQuerySelectorAll 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 DOMElement
self' <- a -> IO (Ptr DOMElement)
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 DOMElement
-> CString -> Ptr (Ptr GError) -> IO (Ptr DOMNodeList)
webkit_dom_element_query_selector_all Ptr DOMElement
self' CString
selectors'
        Text -> Ptr DOMNodeList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMElementQuerySelectorAll" 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 DOMElementQuerySelectorAllMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMNodeList.DOMNodeList), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementQuerySelectorAllMethodInfo a signature where
    overloadedMethod = dOMElementQuerySelectorAll

#endif

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

foreign import ccall "webkit_dom_element_remove" webkit_dom_element_remove :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    Ptr (Ptr GError) ->                     -- error
    IO ()

{-# DEPRECATED dOMElementRemove ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMElementRemove ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> m ()
    -- ^ /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementRemove :: a -> m ()
dOMElementRemove a
self = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
        (Ptr (Ptr GError) -> IO ()) -> IO ()
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO ()) -> IO ())
-> (Ptr (Ptr GError) -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ Ptr DOMElement -> Ptr (Ptr GError) -> IO ()
webkit_dom_element_remove Ptr DOMElement
self'
        a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
        () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
     ) (do
        () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
     )

#if defined(ENABLE_OVERLOADING)
data DOMElementRemoveMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementRemoveMethodInfo a signature where
    overloadedMethod = dOMElementRemove

#endif

-- method DOMElement::remove_attribute
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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: Nothing
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementRemoveAttribute ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementRemoveAttribute ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@name@/: A @/gchar/@
    -> m ()
dOMElementRemoveAttribute :: a -> Text -> m ()
dOMElementRemoveAttribute a
self Text
name = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
name' <- Text -> IO CString
textToCString Text
name
    Ptr DOMElement -> CString -> IO ()
webkit_dom_element_remove_attribute Ptr DOMElement
self' CString
name'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementRemoveAttributeMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementRemoveAttributeMethodInfo a signature where
    overloadedMethod = dOMElementRemoveAttribute

#endif

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

foreign import ccall "webkit_dom_element_remove_attribute_node" webkit_dom_element_remove_attribute_node :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    Ptr WebKit2WebExtension.DOMAttr.DOMAttr -> -- oldAttr : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMAttr"})
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMAttr.DOMAttr)

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

#if defined(ENABLE_OVERLOADING)
data DOMElementRemoveAttributeNodeMethodInfo
instance (signature ~ (b -> m WebKit2WebExtension.DOMAttr.DOMAttr), MonadIO m, IsDOMElement a, WebKit2WebExtension.DOMAttr.IsDOMAttr b) => O.MethodInfo DOMElementRemoveAttributeNodeMethodInfo a signature where
    overloadedMethod = dOMElementRemoveAttributeNode

#endif

-- method DOMElement::remove_attribute_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , 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
--           }
--       , Arg
--           { argCName = "localName"
--           , 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: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_element_remove_attribute_ns" webkit_dom_element_remove_attribute_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- localName : TBasicType TUTF8
    IO ()

{-# DEPRECATED dOMElementRemoveAttributeNs ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementRemoveAttributeNs ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@namespaceURI@/: A @/gchar/@
    -> T.Text
    -- ^ /@localName@/: A @/gchar/@
    -> m ()
dOMElementRemoveAttributeNs :: a -> Text -> Text -> m ()
dOMElementRemoveAttributeNs a
self Text
namespaceURI Text
localName = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
namespaceURI' <- Text -> IO CString
textToCString Text
namespaceURI
    CString
localName' <- Text -> IO CString
textToCString Text
localName
    Ptr DOMElement -> CString -> CString -> IO ()
webkit_dom_element_remove_attribute_ns Ptr DOMElement
self' CString
namespaceURI' CString
localName'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
namespaceURI'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
localName'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementRemoveAttributeNsMethodInfo
instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementRemoveAttributeNsMethodInfo a signature where
    overloadedMethod = dOMElementRemoveAttributeNs

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementRequestPointerLockMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementRequestPointerLockMethodInfo a signature where
    overloadedMethod = dOMElementRequestPointerLock

#endif

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

foreign import ccall "webkit_dom_element_scroll_by_lines" webkit_dom_element_scroll_by_lines :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CLong ->                                -- lines : TBasicType TLong
    IO ()

{-# DEPRECATED dOMElementScrollByLines ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementScrollByLines ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> CLong
    -- ^ /@lines@/: A @/glong/@
    -> m ()
dOMElementScrollByLines :: a -> CLong -> m ()
dOMElementScrollByLines a
self CLong
lines = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement -> CLong -> IO ()
webkit_dom_element_scroll_by_lines Ptr DOMElement
self' CLong
lines
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollByLinesMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementScrollByLinesMethodInfo a signature where
    overloadedMethod = dOMElementScrollByLines

#endif

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

foreign import ccall "webkit_dom_element_scroll_by_pages" webkit_dom_element_scroll_by_pages :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CLong ->                                -- pages : TBasicType TLong
    IO ()

{-# DEPRECATED dOMElementScrollByPages ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementScrollByPages ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> CLong
    -- ^ /@pages@/: A @/glong/@
    -> m ()
dOMElementScrollByPages :: a -> CLong -> m ()
dOMElementScrollByPages a
self CLong
pages = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement -> CLong -> IO ()
webkit_dom_element_scroll_by_pages Ptr DOMElement
self' CLong
pages
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollByPagesMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementScrollByPagesMethodInfo a signature where
    overloadedMethod = dOMElementScrollByPages

#endif

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

foreign import ccall "webkit_dom_element_scroll_into_view" webkit_dom_element_scroll_into_view :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CInt ->                                 -- alignWithTop : TBasicType TBoolean
    IO ()

{-# DEPRECATED dOMElementScrollIntoView ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementScrollIntoView ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> Bool
    -- ^ /@alignWithTop@/: A t'P.Bool'
    -> m ()
dOMElementScrollIntoView :: a -> Bool -> m ()
dOMElementScrollIntoView a
self Bool
alignWithTop = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    let alignWithTop' :: CInt
alignWithTop' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
alignWithTop
    Ptr DOMElement -> CInt -> IO ()
webkit_dom_element_scroll_into_view Ptr DOMElement
self' CInt
alignWithTop'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollIntoViewMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementScrollIntoViewMethodInfo a signature where
    overloadedMethod = dOMElementScrollIntoView

#endif

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

foreign import ccall "webkit_dom_element_scroll_into_view_if_needed" webkit_dom_element_scroll_into_view_if_needed :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CInt ->                                 -- centerIfNeeded : TBasicType TBoolean
    IO ()

{-# DEPRECATED dOMElementScrollIntoViewIfNeeded ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementScrollIntoViewIfNeeded ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> Bool
    -- ^ /@centerIfNeeded@/: A t'P.Bool'
    -> m ()
dOMElementScrollIntoViewIfNeeded :: a -> Bool -> m ()
dOMElementScrollIntoViewIfNeeded a
self Bool
centerIfNeeded = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    let centerIfNeeded' :: CInt
centerIfNeeded' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
centerIfNeeded
    Ptr DOMElement -> CInt -> IO ()
webkit_dom_element_scroll_into_view_if_needed Ptr DOMElement
self' CInt
centerIfNeeded'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementScrollIntoViewIfNeededMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementScrollIntoViewIfNeededMethodInfo a signature where
    overloadedMethod = dOMElementScrollIntoViewIfNeeded

#endif

-- method DOMElement::set_attribute
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , 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
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : True
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementSetAttributeMethodInfo
instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetAttributeMethodInfo a signature where
    overloadedMethod = dOMElementSetAttribute

#endif

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

foreign import ccall "webkit_dom_element_set_attribute_node" webkit_dom_element_set_attribute_node :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    Ptr WebKit2WebExtension.DOMAttr.DOMAttr -> -- newAttr : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMAttr"})
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMAttr.DOMAttr)

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

#if defined(ENABLE_OVERLOADING)
data DOMElementSetAttributeNodeMethodInfo
instance (signature ~ (b -> m WebKit2WebExtension.DOMAttr.DOMAttr), MonadIO m, IsDOMElement a, WebKit2WebExtension.DOMAttr.IsDOMAttr b) => O.MethodInfo DOMElementSetAttributeNodeMethodInfo a signature where
    overloadedMethod = dOMElementSetAttributeNode

#endif

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

foreign import ccall "webkit_dom_element_set_attribute_node_ns" webkit_dom_element_set_attribute_node_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    Ptr WebKit2WebExtension.DOMAttr.DOMAttr -> -- newAttr : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMAttr"})
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMAttr.DOMAttr)

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

#if defined(ENABLE_OVERLOADING)
data DOMElementSetAttributeNodeNsMethodInfo
instance (signature ~ (b -> m WebKit2WebExtension.DOMAttr.DOMAttr), MonadIO m, IsDOMElement a, WebKit2WebExtension.DOMAttr.IsDOMAttr b) => O.MethodInfo DOMElementSetAttributeNodeNsMethodInfo a signature where
    overloadedMethod = dOMElementSetAttributeNodeNs

#endif

-- method DOMElement::set_attribute_ns
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "namespaceURI"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = True
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "qualifiedName"
--           , 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
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_element_set_attribute_ns" webkit_dom_element_set_attribute_ns :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CString ->                              -- namespaceURI : TBasicType TUTF8
    CString ->                              -- qualifiedName : TBasicType TUTF8
    CString ->                              -- value : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO ()

{-# DEPRECATED dOMElementSetAttributeNs ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementSetAttributeNs ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> Maybe (T.Text)
    -- ^ /@namespaceURI@/: A @/gchar/@
    -> T.Text
    -- ^ /@qualifiedName@/: A @/gchar/@
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
    -- ^ /(Can throw 'Data.GI.Base.GError.GError')/
dOMElementSetAttributeNs :: a -> Maybe Text -> Text -> Text -> m ()
dOMElementSetAttributeNs a
self Maybe Text
namespaceURI Text
qualifiedName Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
maybeNamespaceURI <- case Maybe Text
namespaceURI of
        Maybe Text
Nothing -> CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
forall a. Ptr a
nullPtr
        Just Text
jNamespaceURI -> do
            CString
jNamespaceURI' <- Text -> IO CString
textToCString Text
jNamespaceURI
            CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
jNamespaceURI'
    CString
qualifiedName' <- Text -> IO CString
textToCString Text
qualifiedName
    CString
value' <- Text -> IO CString
textToCString Text
value
    IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
        (Ptr (Ptr GError) -> IO ()) -> IO ()
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO ()) -> IO ())
-> (Ptr (Ptr GError) -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ Ptr DOMElement
-> CString -> CString -> CString -> Ptr (Ptr GError) -> IO ()
webkit_dom_element_set_attribute_ns Ptr DOMElement
self' CString
maybeNamespaceURI CString
qualifiedName' CString
value'
        a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeNamespaceURI
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
qualifiedName'
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
        () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
     ) (do
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeNamespaceURI
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
qualifiedName'
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
     )

#if defined(ENABLE_OVERLOADING)
data DOMElementSetAttributeNsMethodInfo
instance (signature ~ (Maybe (T.Text) -> T.Text -> T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetAttributeNsMethodInfo a signature where
    overloadedMethod = dOMElementSetAttributeNs

#endif

-- method DOMElement::set_class_name
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementSetClassName ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementSetClassName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
dOMElementSetClassName :: a -> Text -> m ()
dOMElementSetClassName a
self Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMElement -> CString -> IO ()
webkit_dom_element_set_class_name Ptr DOMElement
self' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementSetClassNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetClassNameMethodInfo a signature where
    overloadedMethod = dOMElementSetClassName

#endif

-- method DOMElement::set_id
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : False
-- Skip return : False

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

{-# DEPRECATED dOMElementSetId ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementSetId ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
dOMElementSetId :: a -> Text -> m ()
dOMElementSetId a
self Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMElement -> CString -> IO ()
webkit_dom_element_set_id Ptr DOMElement
self' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementSetIdMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetIdMethodInfo a signature where
    overloadedMethod = dOMElementSetId

#endif

-- method DOMElement::set_inner_html
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : True
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementSetInnerHtmlMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetInnerHtmlMethodInfo a signature where
    overloadedMethod = dOMElementSetInnerHtml

#endif

-- method DOMElement::set_outer_html
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , 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: Nothing
-- throws : True
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementSetOuterHtmlMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetOuterHtmlMethodInfo a signature where
    overloadedMethod = dOMElementSetOuterHtml

#endif

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

foreign import ccall "webkit_dom_element_set_scroll_left" webkit_dom_element_set_scroll_left :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CLong ->                                -- value : TBasicType TLong
    IO ()

{-# DEPRECATED dOMElementSetScrollLeft ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementSetScrollLeft ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> CLong
    -- ^ /@value@/: A @/glong/@
    -> m ()
dOMElementSetScrollLeft :: a -> CLong -> m ()
dOMElementSetScrollLeft a
self CLong
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement -> CLong -> IO ()
webkit_dom_element_set_scroll_left Ptr DOMElement
self' CLong
value
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementSetScrollLeftMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetScrollLeftMethodInfo a signature where
    overloadedMethod = dOMElementSetScrollLeft

#endif

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

foreign import ccall "webkit_dom_element_set_scroll_top" webkit_dom_element_set_scroll_top :: 
    Ptr DOMElement ->                       -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
    CLong ->                                -- value : TBasicType TLong
    IO ()

{-# DEPRECATED dOMElementSetScrollTop ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMElementSetScrollTop ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
    -> CLong
    -- ^ /@value@/: A @/glong/@
    -> m ()
dOMElementSetScrollTop :: a -> CLong -> m ()
dOMElementSetScrollTop a
self CLong
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMElement
self' <- a -> IO (Ptr DOMElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement -> CLong -> IO ()
webkit_dom_element_set_scroll_top Ptr DOMElement
self' CLong
value
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMElementSetScrollTopMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementSetScrollTopMethodInfo a signature where
    overloadedMethod = dOMElementSetScrollTop

#endif

-- method DOMElement::webkit_matches_selector
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "WebKit2WebExtension" , name = "DOMElement" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMElement"
--                 , 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 (TBasicType TBoolean)
-- throws : True
-- Skip return : False

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementWebkitMatchesSelectorMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementWebkitMatchesSelectorMethodInfo a signature where
    overloadedMethod = dOMElementWebkitMatchesSelector

#endif

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

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

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

#if defined(ENABLE_OVERLOADING)
data DOMElementWebkitRequestFullscreenMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDOMElement a) => O.MethodInfo DOMElementWebkitRequestFullscreenMethodInfo a signature where
    overloadedMethod = dOMElementWebkitRequestFullscreen

#endif