{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2WebExtension.Objects.DOMComment
(
DOMComment(..) ,
IsDOMComment ,
toDOMComment ,
#if defined(ENABLE_OVERLOADING)
ResolveDOMCommentMethod ,
#endif
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMEventTarget as WebKit2WebExtension.DOMEventTarget
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCharacterData as WebKit2WebExtension.DOMCharacterData
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject
newtype = (SP.ManagedPtr DOMComment)
deriving (DOMComment -> DOMComment -> Bool
(DOMComment -> DOMComment -> Bool)
-> (DOMComment -> DOMComment -> Bool) -> Eq DOMComment
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DOMComment -> DOMComment -> Bool
== :: DOMComment -> DOMComment -> Bool
$c/= :: DOMComment -> DOMComment -> Bool
/= :: DOMComment -> DOMComment -> Bool
Eq)
instance SP.ManagedPtrNewtype DOMComment where
toManagedPtr :: DOMComment -> ManagedPtr DOMComment
toManagedPtr (DOMComment ManagedPtr DOMComment
p) = ManagedPtr DOMComment
p
foreign import ccall "webkit_dom_comment_get_type"
:: IO B.Types.GType
instance B.Types.TypedObject DOMComment where
glibType :: IO GType
glibType = IO GType
c_webkit_dom_comment_get_type
instance B.Types.GObject DOMComment
class (SP.GObject o, O.IsDescendantOf DOMComment o) => o
instance (SP.GObject o, O.IsDescendantOf DOMComment o) => IsDOMComment o
instance O.HasParentTypes DOMComment
type instance O.ParentTypes DOMComment = '[WebKit2WebExtension.DOMCharacterData.DOMCharacterData, WebKit2WebExtension.DOMNode.DOMNode, WebKit2WebExtension.DOMObject.DOMObject, GObject.Object.Object, WebKit2WebExtension.DOMEventTarget.DOMEventTarget]
toDOMComment :: (MIO.MonadIO m, IsDOMComment o) => o -> m DOMComment
= IO DOMComment -> m DOMComment
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO DOMComment -> m DOMComment)
-> (o -> IO DOMComment) -> o -> m DOMComment
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr DOMComment -> DOMComment) -> o -> IO DOMComment
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr DOMComment -> DOMComment
DOMComment
instance B.GValue.IsGValue (Maybe DOMComment) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_webkit_dom_comment_get_type
gvalueSet_ :: Ptr GValue -> Maybe DOMComment -> IO ()
gvalueSet_ Ptr GValue
gv Maybe DOMComment
P.Nothing = Ptr GValue -> Ptr DOMComment -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr DOMComment
forall a. Ptr a
FP.nullPtr :: FP.Ptr DOMComment)
gvalueSet_ Ptr GValue
gv (P.Just DOMComment
obj) = DOMComment -> (Ptr DOMComment -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr DOMComment
obj (Ptr GValue -> Ptr DOMComment -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe DOMComment)
gvalueGet_ Ptr GValue
gv = do
Ptr DOMComment
ptr <- Ptr GValue -> IO (Ptr DOMComment)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr DOMComment)
if Ptr DOMComment
ptr Ptr DOMComment -> Ptr DOMComment -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr DOMComment
forall a. Ptr a
FP.nullPtr
then DOMComment -> Maybe DOMComment
forall a. a -> Maybe a
P.Just (DOMComment -> Maybe DOMComment)
-> IO DOMComment -> IO (Maybe DOMComment)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr DOMComment -> DOMComment)
-> Ptr DOMComment -> IO DOMComment
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr DOMComment -> DOMComment
DOMComment Ptr DOMComment
ptr
else Maybe DOMComment -> IO (Maybe DOMComment)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DOMComment
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveDOMCommentMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveDOMCommentMethod "addEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetAddEventListenerMethodInfo
ResolveDOMCommentMethod "appendChild" o = WebKit2WebExtension.DOMNode.DOMNodeAppendChildMethodInfo
ResolveDOMCommentMethod "appendData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataAppendDataMethodInfo
ResolveDOMCommentMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDOMCommentMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDOMCommentMethod "cloneNodeWithError" o = WebKit2WebExtension.DOMNode.DOMNodeCloneNodeWithErrorMethodInfo
ResolveDOMCommentMethod "compareDocumentPosition" o = WebKit2WebExtension.DOMNode.DOMNodeCompareDocumentPositionMethodInfo
ResolveDOMCommentMethod "contains" o = WebKit2WebExtension.DOMNode.DOMNodeContainsMethodInfo
ResolveDOMCommentMethod "deleteData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataDeleteDataMethodInfo
ResolveDOMCommentMethod "dispatchEvent" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetDispatchEventMethodInfo
ResolveDOMCommentMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDOMCommentMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDOMCommentMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveDOMCommentMethod "hasChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeHasChildNodesMethodInfo
ResolveDOMCommentMethod "insertBefore" o = WebKit2WebExtension.DOMNode.DOMNodeInsertBeforeMethodInfo
ResolveDOMCommentMethod "insertData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataInsertDataMethodInfo
ResolveDOMCommentMethod "isDefaultNamespace" o = WebKit2WebExtension.DOMNode.DOMNodeIsDefaultNamespaceMethodInfo
ResolveDOMCommentMethod "isEqualNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsEqualNodeMethodInfo
ResolveDOMCommentMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDOMCommentMethod "isSameNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsSameNodeMethodInfo
ResolveDOMCommentMethod "isSupported" o = WebKit2WebExtension.DOMNode.DOMNodeIsSupportedMethodInfo
ResolveDOMCommentMethod "lookupNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeLookupNamespaceUriMethodInfo
ResolveDOMCommentMethod "lookupPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeLookupPrefixMethodInfo
ResolveDOMCommentMethod "normalize" o = WebKit2WebExtension.DOMNode.DOMNodeNormalizeMethodInfo
ResolveDOMCommentMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDOMCommentMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDOMCommentMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveDOMCommentMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDOMCommentMethod "removeChild" o = WebKit2WebExtension.DOMNode.DOMNodeRemoveChildMethodInfo
ResolveDOMCommentMethod "removeEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetRemoveEventListenerMethodInfo
ResolveDOMCommentMethod "replaceChild" o = WebKit2WebExtension.DOMNode.DOMNodeReplaceChildMethodInfo
ResolveDOMCommentMethod "replaceData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataReplaceDataMethodInfo
ResolveDOMCommentMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDOMCommentMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDOMCommentMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDOMCommentMethod "substringData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataSubstringDataMethodInfo
ResolveDOMCommentMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDOMCommentMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveDOMCommentMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDOMCommentMethod "getBaseUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetBaseUriMethodInfo
ResolveDOMCommentMethod "getChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeGetChildNodesMethodInfo
ResolveDOMCommentMethod "getData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataGetDataMethodInfo
ResolveDOMCommentMethod "getFirstChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetFirstChildMethodInfo
ResolveDOMCommentMethod "getLastChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetLastChildMethodInfo
ResolveDOMCommentMethod "getLength" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataGetLengthMethodInfo
ResolveDOMCommentMethod "getLocalName" o = WebKit2WebExtension.DOMNode.DOMNodeGetLocalNameMethodInfo
ResolveDOMCommentMethod "getNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetNamespaceUriMethodInfo
ResolveDOMCommentMethod "getNextSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetNextSiblingMethodInfo
ResolveDOMCommentMethod "getNodeName" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeNameMethodInfo
ResolveDOMCommentMethod "getNodeType" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeTypeMethodInfo
ResolveDOMCommentMethod "getNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeValueMethodInfo
ResolveDOMCommentMethod "getOwnerDocument" o = WebKit2WebExtension.DOMNode.DOMNodeGetOwnerDocumentMethodInfo
ResolveDOMCommentMethod "getParentElement" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentElementMethodInfo
ResolveDOMCommentMethod "getParentNode" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentNodeMethodInfo
ResolveDOMCommentMethod "getPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeGetPrefixMethodInfo
ResolveDOMCommentMethod "getPreviousSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetPreviousSiblingMethodInfo
ResolveDOMCommentMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDOMCommentMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDOMCommentMethod "getTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeGetTextContentMethodInfo
ResolveDOMCommentMethod "setData" o = WebKit2WebExtension.DOMCharacterData.DOMCharacterDataSetDataMethodInfo
ResolveDOMCommentMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveDOMCommentMethod "setNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeSetNodeValueMethodInfo
ResolveDOMCommentMethod "setPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeSetPrefixMethodInfo
ResolveDOMCommentMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDOMCommentMethod "setTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeSetTextContentMethodInfo
ResolveDOMCommentMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDOMCommentMethod t DOMComment, O.OverloadedMethod info DOMComment p) => OL.IsLabel t (DOMComment -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveDOMCommentMethod t DOMComment, O.OverloadedMethod info DOMComment p, R.HasField t DOMComment p) => R.HasField t DOMComment p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveDOMCommentMethod t DOMComment, O.OverloadedMethodInfo info DOMComment) => OL.IsLabel t (O.MethodProxy info DOMComment) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList DOMComment
type instance O.AttributeList DOMComment = DOMCommentAttributeList
type DOMCommentAttributeList = ('[ '("baseUri", WebKit2WebExtension.DOMNode.DOMNodeBaseUriPropertyInfo), '("childNodes", WebKit2WebExtension.DOMNode.DOMNodeChildNodesPropertyInfo), '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("data", WebKit2WebExtension.DOMCharacterData.DOMCharacterDataDataPropertyInfo), '("firstChild", WebKit2WebExtension.DOMNode.DOMNodeFirstChildPropertyInfo), '("lastChild", WebKit2WebExtension.DOMNode.DOMNodeLastChildPropertyInfo), '("length", WebKit2WebExtension.DOMCharacterData.DOMCharacterDataLengthPropertyInfo), '("nextSibling", WebKit2WebExtension.DOMNode.DOMNodeNextSiblingPropertyInfo), '("nodeName", WebKit2WebExtension.DOMNode.DOMNodeNodeNamePropertyInfo), '("nodeType", WebKit2WebExtension.DOMNode.DOMNodeNodeTypePropertyInfo), '("nodeValue", WebKit2WebExtension.DOMNode.DOMNodeNodeValuePropertyInfo), '("ownerDocument", WebKit2WebExtension.DOMNode.DOMNodeOwnerDocumentPropertyInfo), '("parentElement", WebKit2WebExtension.DOMNode.DOMNodeParentElementPropertyInfo), '("parentNode", WebKit2WebExtension.DOMNode.DOMNodeParentNodePropertyInfo), '("previousSibling", WebKit2WebExtension.DOMNode.DOMNodePreviousSiblingPropertyInfo), '("textContent", WebKit2WebExtension.DOMNode.DOMNodeTextContentPropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList DOMComment = DOMCommentSignalList
type DOMCommentSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif