module GI.WebKit.Objects.DOMDatabase
(
DOMDatabase(..) ,
DOMDatabaseK ,
toDOMDatabase ,
noDOMDatabase ,
dOMDatabaseGetVersion ,
DOMDatabaseVersionPropertyInfo ,
getDOMDatabaseVersion ,
) 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 DOMDatabase = DOMDatabase (ForeignPtr DOMDatabase)
foreign import ccall "webkit_dom_database_get_type"
c_webkit_dom_database_get_type :: IO GType
type instance ParentTypes DOMDatabase = DOMDatabaseParentTypes
type DOMDatabaseParentTypes = '[DOMObject, GObject.Object]
instance GObject DOMDatabase where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_webkit_dom_database_get_type
class GObject o => DOMDatabaseK o
instance (GObject o, IsDescendantOf DOMDatabase o) => DOMDatabaseK o
toDOMDatabase :: DOMDatabaseK o => o -> IO DOMDatabase
toDOMDatabase = unsafeCastTo DOMDatabase
noDOMDatabase :: Maybe DOMDatabase
noDOMDatabase = Nothing
getDOMDatabaseVersion :: (MonadIO m, DOMDatabaseK o) => o -> m T.Text
getDOMDatabaseVersion obj = liftIO $ getObjectPropertyString obj "version"
data DOMDatabaseVersionPropertyInfo
instance AttrInfo DOMDatabaseVersionPropertyInfo where
type AttrAllowedOps DOMDatabaseVersionPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DOMDatabaseVersionPropertyInfo = (~) ()
type AttrBaseTypeConstraint DOMDatabaseVersionPropertyInfo = DOMDatabaseK
type AttrGetType DOMDatabaseVersionPropertyInfo = T.Text
type AttrLabel DOMDatabaseVersionPropertyInfo = "DOMDatabase::version"
attrGet _ = getDOMDatabaseVersion
attrSet _ = undefined
attrConstruct _ = undefined
type instance AttributeList DOMDatabase = DOMDatabaseAttributeList
type DOMDatabaseAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("version", DOMDatabaseVersionPropertyInfo)] :: [(Symbol, *)])
type instance SignalList DOMDatabase = DOMDatabaseSignalList
type DOMDatabaseSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "webkit_dom_database_get_version" webkit_dom_database_get_version ::
Ptr DOMDatabase ->
IO CString
dOMDatabaseGetVersion ::
(MonadIO m, DOMDatabaseK a) =>
a ->
m T.Text
dOMDatabaseGetVersion _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_dom_database_get_version _obj'
checkUnexpectedReturnNULL "webkit_dom_database_get_version" result
result' <- cstringToText result
freeMem result
touchManagedPtr _obj
return result'