gi-webkit-0.2.4.13: GI/WebKit/Objects/DOMMemoryInfo.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.WebKit.Objects.DOMMemoryInfo
(
-- * Exported types
DOMMemoryInfo(..) ,
DOMMemoryInfoK ,
toDOMMemoryInfo ,
noDOMMemoryInfo ,
-- * Methods
-- ** dOMMemoryInfoGetJsHeapSizeLimit
dOMMemoryInfoGetJsHeapSizeLimit ,
-- ** dOMMemoryInfoGetTotalJsHeapSize
dOMMemoryInfoGetTotalJsHeapSize ,
-- ** dOMMemoryInfoGetUsedJsHeapSize
dOMMemoryInfoGetUsedJsHeapSize ,
-- * Properties
-- ** JsHeapSizeLimit
DOMMemoryInfoJsHeapSizeLimitPropertyInfo,
getDOMMemoryInfoJsHeapSizeLimit ,
-- ** TotalJsHeapSize
DOMMemoryInfoTotalJsHeapSizePropertyInfo,
getDOMMemoryInfoTotalJsHeapSize ,
-- ** UsedJsHeapSize
DOMMemoryInfoUsedJsHeapSizePropertyInfo ,
getDOMMemoryInfoUsedJsHeapSize ,
) 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.WebKit.Types
import GI.WebKit.Callbacks
import qualified GI.GObject as GObject
newtype DOMMemoryInfo = DOMMemoryInfo (ForeignPtr DOMMemoryInfo)
foreign import ccall "webkit_dom_memory_info_get_type"
c_webkit_dom_memory_info_get_type :: IO GType
type instance ParentTypes DOMMemoryInfo = DOMMemoryInfoParentTypes
type DOMMemoryInfoParentTypes = '[DOMObject, GObject.Object]
instance GObject DOMMemoryInfo where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_webkit_dom_memory_info_get_type
class GObject o => DOMMemoryInfoK o
instance (GObject o, IsDescendantOf DOMMemoryInfo o) => DOMMemoryInfoK o
toDOMMemoryInfo :: DOMMemoryInfoK o => o -> IO DOMMemoryInfo
toDOMMemoryInfo = unsafeCastTo DOMMemoryInfo
noDOMMemoryInfo :: Maybe DOMMemoryInfo
noDOMMemoryInfo = Nothing
type family ResolveDOMMemoryInfoMethod (t :: Symbol) (o :: *) :: * where
ResolveDOMMemoryInfoMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveDOMMemoryInfoMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveDOMMemoryInfoMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveDOMMemoryInfoMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveDOMMemoryInfoMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveDOMMemoryInfoMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveDOMMemoryInfoMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveDOMMemoryInfoMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveDOMMemoryInfoMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveDOMMemoryInfoMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveDOMMemoryInfoMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveDOMMemoryInfoMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveDOMMemoryInfoMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveDOMMemoryInfoMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveDOMMemoryInfoMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveDOMMemoryInfoMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveDOMMemoryInfoMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveDOMMemoryInfoMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveDOMMemoryInfoMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
ResolveDOMMemoryInfoMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveDOMMemoryInfoMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveDOMMemoryInfoMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
ResolveDOMMemoryInfoMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveDOMMemoryInfoMethod t DOMMemoryInfo, MethodInfo info DOMMemoryInfo p) => IsLabelProxy t (DOMMemoryInfo -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDOMMemoryInfoMethod t DOMMemoryInfo, MethodInfo info DOMMemoryInfo p) => IsLabel t (DOMMemoryInfo -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
-- VVV Prop "js-heap-size-limit"
-- Type: TBasicType TUInt64
-- Flags: [PropertyReadable]
getDOMMemoryInfoJsHeapSizeLimit :: (MonadIO m, DOMMemoryInfoK o) => o -> m Word64
getDOMMemoryInfoJsHeapSizeLimit obj = liftIO $ getObjectPropertyUInt64 obj "js-heap-size-limit"
data DOMMemoryInfoJsHeapSizeLimitPropertyInfo
instance AttrInfo DOMMemoryInfoJsHeapSizeLimitPropertyInfo where
type AttrAllowedOps DOMMemoryInfoJsHeapSizeLimitPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DOMMemoryInfoJsHeapSizeLimitPropertyInfo = (~) ()
type AttrBaseTypeConstraint DOMMemoryInfoJsHeapSizeLimitPropertyInfo = DOMMemoryInfoK
type AttrGetType DOMMemoryInfoJsHeapSizeLimitPropertyInfo = Word64
type AttrLabel DOMMemoryInfoJsHeapSizeLimitPropertyInfo = "js-heap-size-limit"
attrGet _ = getDOMMemoryInfoJsHeapSizeLimit
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "total-js-heap-size"
-- Type: TBasicType TUInt64
-- Flags: [PropertyReadable]
getDOMMemoryInfoTotalJsHeapSize :: (MonadIO m, DOMMemoryInfoK o) => o -> m Word64
getDOMMemoryInfoTotalJsHeapSize obj = liftIO $ getObjectPropertyUInt64 obj "total-js-heap-size"
data DOMMemoryInfoTotalJsHeapSizePropertyInfo
instance AttrInfo DOMMemoryInfoTotalJsHeapSizePropertyInfo where
type AttrAllowedOps DOMMemoryInfoTotalJsHeapSizePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DOMMemoryInfoTotalJsHeapSizePropertyInfo = (~) ()
type AttrBaseTypeConstraint DOMMemoryInfoTotalJsHeapSizePropertyInfo = DOMMemoryInfoK
type AttrGetType DOMMemoryInfoTotalJsHeapSizePropertyInfo = Word64
type AttrLabel DOMMemoryInfoTotalJsHeapSizePropertyInfo = "total-js-heap-size"
attrGet _ = getDOMMemoryInfoTotalJsHeapSize
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "used-js-heap-size"
-- Type: TBasicType TUInt64
-- Flags: [PropertyReadable]
getDOMMemoryInfoUsedJsHeapSize :: (MonadIO m, DOMMemoryInfoK o) => o -> m Word64
getDOMMemoryInfoUsedJsHeapSize obj = liftIO $ getObjectPropertyUInt64 obj "used-js-heap-size"
data DOMMemoryInfoUsedJsHeapSizePropertyInfo
instance AttrInfo DOMMemoryInfoUsedJsHeapSizePropertyInfo where
type AttrAllowedOps DOMMemoryInfoUsedJsHeapSizePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DOMMemoryInfoUsedJsHeapSizePropertyInfo = (~) ()
type AttrBaseTypeConstraint DOMMemoryInfoUsedJsHeapSizePropertyInfo = DOMMemoryInfoK
type AttrGetType DOMMemoryInfoUsedJsHeapSizePropertyInfo = Word64
type AttrLabel DOMMemoryInfoUsedJsHeapSizePropertyInfo = "used-js-heap-size"
attrGet _ = getDOMMemoryInfoUsedJsHeapSize
attrSet _ = undefined
attrConstruct _ = undefined
type instance AttributeList DOMMemoryInfo = DOMMemoryInfoAttributeList
type DOMMemoryInfoAttributeList = ('[ '("coreObject", DOMObjectCoreObjectPropertyInfo), '("jsHeapSizeLimit", DOMMemoryInfoJsHeapSizeLimitPropertyInfo), '("totalJsHeapSize", DOMMemoryInfoTotalJsHeapSizePropertyInfo), '("usedJsHeapSize", DOMMemoryInfoUsedJsHeapSizePropertyInfo)] :: [(Symbol, *)])
type instance SignalList DOMMemoryInfo = DOMMemoryInfoSignalList
type DOMMemoryInfoSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method DOMMemoryInfo::get_js_heap_size_limit
-- method type : MemberFunction
-- Args : [Arg {argCName = "self", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TUInt64
-- throws : False
-- Skip return : False
foreign import ccall "webkit_dom_memory_info_get_js_heap_size_limit" webkit_dom_memory_info_get_js_heap_size_limit ::
Ptr () -> -- self : TBasicType TVoid
IO Word64
{-# DEPRECATED dOMMemoryInfoGetJsHeapSizeLimit ["(Since version 2.2)"]#-}
dOMMemoryInfoGetJsHeapSizeLimit ::
(MonadIO m) =>
Ptr () -- self
-> m Word64 -- result
dOMMemoryInfoGetJsHeapSizeLimit self = liftIO $ do
result <- webkit_dom_memory_info_get_js_heap_size_limit self
return result
-- method DOMMemoryInfo::get_total_js_heap_size
-- method type : MemberFunction
-- Args : [Arg {argCName = "self", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TUInt64
-- throws : False
-- Skip return : False
foreign import ccall "webkit_dom_memory_info_get_total_js_heap_size" webkit_dom_memory_info_get_total_js_heap_size ::
Ptr () -> -- self : TBasicType TVoid
IO Word64
{-# DEPRECATED dOMMemoryInfoGetTotalJsHeapSize ["(Since version 2.2)"]#-}
dOMMemoryInfoGetTotalJsHeapSize ::
(MonadIO m) =>
Ptr () -- self
-> m Word64 -- result
dOMMemoryInfoGetTotalJsHeapSize self = liftIO $ do
result <- webkit_dom_memory_info_get_total_js_heap_size self
return result
-- method DOMMemoryInfo::get_used_js_heap_size
-- method type : MemberFunction
-- Args : [Arg {argCName = "self", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TUInt64
-- throws : False
-- Skip return : False
foreign import ccall "webkit_dom_memory_info_get_used_js_heap_size" webkit_dom_memory_info_get_used_js_heap_size ::
Ptr () -> -- self : TBasicType TVoid
IO Word64
{-# DEPRECATED dOMMemoryInfoGetUsedJsHeapSize ["(Since version 2.2)"]#-}
dOMMemoryInfoGetUsedJsHeapSize ::
(MonadIO m) =>
Ptr () -- self
-> m Word64 -- result
dOMMemoryInfoGetUsedJsHeapSize self = liftIO $ do
result <- webkit_dom_memory_info_get_used_js_heap_size self
return result