module GI.WebKit2WebExtension.Interfaces.DOMNodeFilter
(
DOMNodeFilter(..) ,
noDOMNodeFilter ,
DOMNodeFilterK ,
toDOMNodeFilter ,
dOMNodeFilterAcceptNode ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.WebKit2WebExtension.Types
import GI.WebKit2WebExtension.Callbacks
import qualified GI.GObject as GObject
newtype DOMNodeFilter = DOMNodeFilter (ForeignPtr DOMNodeFilter)
noDOMNodeFilter :: Maybe DOMNodeFilter
noDOMNodeFilter = Nothing
type instance AttributeList DOMNodeFilter = DOMNodeFilterAttributeList
type DOMNodeFilterAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList DOMNodeFilter = DOMNodeFilterSignalList
type DOMNodeFilterSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "webkit_dom_node_filter_get_type"
c_webkit_dom_node_filter_get_type :: IO GType
type instance ParentTypes DOMNodeFilter = DOMNodeFilterParentTypes
type DOMNodeFilterParentTypes = '[GObject.Object]
instance GObject DOMNodeFilter where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_webkit_dom_node_filter_get_type
class GObject o => DOMNodeFilterK o
instance (GObject o, IsDescendantOf DOMNodeFilter o) => DOMNodeFilterK o
toDOMNodeFilter :: DOMNodeFilterK o => o -> IO DOMNodeFilter
toDOMNodeFilter = unsafeCastTo DOMNodeFilter
foreign import ccall "webkit_dom_node_filter_accept_node" webkit_dom_node_filter_accept_node ::
Ptr DOMNodeFilter ->
Ptr DOMNode ->
IO Int16
dOMNodeFilterAcceptNode ::
(MonadIO m, DOMNodeFilterK a, DOMNodeK b) =>
a ->
b ->
m Int16
dOMNodeFilterAcceptNode _obj node = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let node' = unsafeManagedPtrCastPtr node
result <- webkit_dom_node_filter_accept_node _obj' node'
touchManagedPtr _obj
touchManagedPtr node
return result